|
From: | Shen Feng |
Subject: | Linux device number bug report |
Date: | Wed, 24 Dec 2003 11:55:09 +0800 |
Hello,
I have some questions about device number extension. In Linux kernel 2.6, device number will be extended from 16-bit to 32-bit. All utilities and libraries should make corresponding extension for this new feature in kernel 2.6. I find that “grub-0.93-7” uses variables "major" and "minor" to represent two different parts of device number, but the device number is operated as 16-bit. In file lib/device.c, the following macro is defined. # ifndef MAJOR
# ifndef MINORBITS # define MINORBITS 8 # endif /* ! MINORBITS */ # define MAJOR(dev) ((unsigned int) ((dev) >> MINORBITS)) # endif /* ! MAJOR */ As following, "major" should be 12-bit, and "minor" should be 20-bit. mmmm mmmm mmmm MMMM MMMM MMMM mmmm mmmm "M" means major device number. "m" means minor device number. But this major considers both "major" and "minor" as 8-bit. It seems not to correspond to device number extension. Since I didn’t find any information about this aspect in homepage of this package, I wonder whether the latest version has completed the device number extension? If not, will it be completed in the future? And when? Looking forward to answering. Regards, Shen Feng -------------------------------------------------- Dept. of Technology and Development Nanjing Fujitsu Nanda Software Tech. Co., Ltd.(FNST) No. 16-5, Guanzhou Rd., Nanjing, P.R.China PHONE: +86+25-86630523-653 FUJITSU INTERNAL: 79955-653 FAX: +86+25-83317685 Mail: address@hidden -------------------------------------------------- |
[Prev in Thread] | Current Thread | [Next in Thread] |