[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#697017: root=compute fails at parse_numeric() for lilo compatibility



On Thu, 03 Jan 2013 01:49:14 -0500 (EST), Jonathan Nieder wrote:
> 
> Less than or equal to 4095 and 255 respectively, technically. ;-)
> 
> The full formula was just trivia.  (stat's st_dev and lilo's MKDEV()
> macro use it, for what it's worth.)

Well I rolled up my sleeves and took a look at lilo's source code,
particularly the MKDEV, MAJOR, and MINOR functions, and now I
understand what you are talking about.  And you're right.  The current
initramfs-tools code, particularly the parse_numeric function, can
handle major device numbers up to 4095 and minor device numbers up to
255.  Whether lilo itself, in actual fact, can correctly handle major
and minor device numbers outside this range, I don't know.  I didn't
dig deeply enough to verify that.  But given that the above three
functions understand the format, I suspect that it will.  If you want
to enhance the code to correctly handle the full 16-hex-digit composite
device number, go ahead.  As you say, it's trivial.  And that would
once again make you the author of the final patch, which is fine.

-- 
  .''`.     Stephen Powell    
 : :'  :
 `. `'`
   `-


Reply to: