Empty partition nodes not created (was device node issues with recent mm's and udev)
Ok, first off I'd like to say, I am on 2.6.12-rc3-mm2, and this issue is not fixed at all. Secondly, I'd like to say that I've pinpointed it a bit more. It appears only Empty partitions (type 0 in fdisk) do not create device nodes.
Here is the partition table from fdisk, fdisk does run fine.. its just the fact this node is not created that threw me off before.
Device Boot Start End Blocks Id System /dev/sdb1 * 1 2 16033+ 0 Empty /dev/sdb2 * 6 2431 19486845 b W95 FAT32 /dev/sdb3 3 5 24097+ 83 Linux
Notice, /dev/sdb1 is a Empty partition... in /dev I only have sdb, sdb2, and sdb3. No sdb1. Any help would be appreciated.
Thanks,
Joe
Quoted 8 lines · Joe
Ok, first off I'd like to say, I am on 2.6.12-rc3-mm2, and this issue is not fixed at all. Secondly, I'd like to say that I've pinpointed it a bit more. It appears only Empty partitions (type 0 in fdisk) do not create device nodes.
Here is the partition table from fdisk, fdisk does run fine.. its just the fact this node is not created that threw me off before.
Quoted 8 lines
Device Boot Start End Blocks Id System /dev/sdb1 * 1 2 16033+ 0 Empty /dev/sdb2 * 6 2431 19486845 b W95 FAT32 /dev/sdb3 3 5 24097+ 83 LinuxNotice,
/dev/sdb1is a Empty partition... in /dev I only have sdb, sdb2, and sdb3. No sdb1. Any help would be appreciated.
Looks like it might be a scsi issue. Redirecting to that mailing list now. Anyone here have a clue?
thanks,
greg k-h
On Mon, 2 May 2005 20:14:21 -0700 Greg KH wrote:
| On Mon, May 02, 2005 at 10:51:24PM -0400, Joe wrote: | > Ok, first off I'd like to say, I am on 2.6.12-rc3-mm2, and this issue | > is not fixed at all. Secondly, I'd like to say that I've pinpointed | > it a bit more. It appears only Empty partitions (type 0 in fdisk) do | > not create device nodes. | > | > Here is the partition table from fdisk, fdisk does run fine.. its just | > the fact this node is not created that threw me off before. | > | > Device Boot Start End Blocks Id System | > /dev/sdb1 * 1 2 16033+ 0 Empty | > /dev/sdb2 * 6 2431 19486845 b W95 FAT32 | > /dev/sdb3 3 5 24097+ 83 Linux | > | > | > Notice, /dev/sdb1 is a Empty partition... in /dev I only have sdb, | > sdb2, and sdb3. No sdb1. Any help would be appreciated. | | Looks like it might be a scsi issue. Redirecting to that mailing list | now. Anyone here have a clue?
Could this 2.6.11.8 -stable patch fix it?
Subject: [04/07] partitions/msdos.c fix
Joe, can you test 2.6.11.8, please?
---
~Randy
Quoted 8 lines · Randy.Dunlap
Could this 2.6.11.8 -stable patch fix it?
Subject: [04/07]partitions/msdos.cfixJoe, can you test 2.6.11.8, please?
---
~Randy
Randy, Can't run vanilla at the moment on this setup, any way you can get the patch seperate? I also don't think that will fix it because this is an empty, not a msdos partition.
Thanks,
Joe
On Tue, 3 May 2005 00:18:05 -0400 Joe wrote:
| On 5/2/05, Randy.Dunlap <[email protected]> wrote: | > Could this 2.6.11.8 -stable patch fix it? | > Subject: [04/07] partitions/msdos.c fix | > | > Joe, can you test 2.6.11.8, please? | > | > --- | > ~Randy | > | | Randy, Can't run vanilla at the moment on this setup, any way you can | get the patch seperate? I also don't think that will fix it because | this is an empty, not a msdos partition.
Yeah, I could be way off on this. Anyway, the patch is below.
---
~Randy
------------------
Erik reports this fixes an oops on boot for him.
From: Andries Brouwer <[email protected]>
A well-known kernel bug is that it guesses at the partition type and the partitions on any disk it encounters. This is bad because needless I/O is done, slowing down the boot, sometimes quite a lot, especially when I/O errors occur. And it is bad because sometimes we guess wrong.
In other words, we need the user space command `partition', where "partition -t dos /dev/sda" reads a DOS-type partition table. (And "partition /dev/sda" tries all known heuristics to decide what type of partitioning might be present.) The two variants are: (i) partition tells the kernel to do the partition table reading, and (ii) partition uses partx to read the partition table and tells the kernel one-by-one about the partitions found this way.
Since this is a fundamental change, a long transition period is needed, and that period could start with a kernel boot parameter telling the kernel not to do partition table parsing on a particular disk, or a particular type of disks, or all disks.
This could have been the intro to a patch doing that, but is not. (It is just an RFC.)
The tiny patch below prompted the above - it was suggested by Uwe Bonnes who encountered USB devices without partition table where our present heuristics did not suffice to stop partition table parsing. It causes the kernel to ignore partitions of type 0. A band-aid.
I think nobody uses such partitions seriously, but nevertheless this should probably live in -mm for a while to see if anybody complains.
---
===== fs/partitions/msdos.c 1.26 vs 1.27 =====
fs/partitions/msdos.c +5 -0
@@ -114,6 +114,9 @@ parse_extended(struct parsed_partitions*/ for (i=0 ; i<4 ; i++, p++) {u32 offs, size, next; + +if (SYS_IND (p) ==0 ) +continue ;if (!NR_SECTS (p) ||is_extended_partition (p))continue ;
@@ -430,6 +433,8 @@ int msdos_partition(struct parsed_partitfor (slot =1 ; slot <=4 ; slot++, p++) {u32 start =START_SECT (p)*sector_size;u32 size =NR_SECTS (p)*sector_size; +if (SYS_IND (p) ==0 ) +continue ;if (!size)continue ;if (is_extended_partition (p)) {
-
Quoted 10 lines · Joe
Quoted 8 lines · Randy.Dunlap
Could this 2.6.11.8 -stable patch fix it?
Subject: [04/07]partitions/msdos.cfixJoe, can you test 2.6.11.8, please?
---
~Randy
Quoted 6 lines
Randy, Can't run vanilla at the moment on this setup, any way you can get the patch seperate? I also don't think that will fix it because this is an empty, not a msdos partition.
Thanks,
Joe
There is a misunderstanding in terminology here. "DOS-type partition table" is for most Linux users the only type they have ever seen. The msdos in this context does not refer to a particular filesystem, like the fat or msdos filesystem.
In case you have a problem because you want to access this partition, give it some nonzero type.
Andries
Quoted 4 lines
There is a misunderstanding in terminology here. "DOS-type partition table" is for most Linux users the only type they have ever seen. The msdos in this context does not refer to a particular filesystem, like the fat or msdos filesystem.
As long as we're talking terminology: fat and msdos aren't particular filesystems. They're particular filesystem types. The contents of a particular DOS-fomatted floppy disk would be an example of a particular filesystem.
--
Bryan Henderson IBM Almaden Research Center
San Jose CA Filesystems
Quoted 18 lines · Randy.Dunlap
On Mon, 2 May 2005 20:14:21 -0700 Greg KH wrote:
| On Mon, May 02, 2005 at 10:51:24PM -0400, Joe wrote: | > Ok, first off I'd like to say, I am on 2.6.12-rc3-mm2, and this issue | > is not fixed at all. Secondly, I'd like to say that I've pinpointed | > it a bit more. It appears only Empty partitions (type 0 in fdisk) do | > not create device nodes. | > | > Here is the partition table from fdisk, fdisk does run fine.. its just | > the fact this node is not created that threw me off before. | > | > Device Boot Start End Blocks Id System | > /dev/sdb1 * 1 2 16033+ 0 Empty | > /dev/sdb2 * 6 2431 19486845 b W95 FAT32 | > /dev/sdb3 3 5 24097+ 83 Linux | > | > | > Notice, /dev/sdb1 is a Empty partition... in /dev I only have sdb, | > sdb2, and sdb3. No sdb1. Any help would be appreciated. | | Looks like it might be a scsi issue. Redirecting to that mailing list | now. Anyone here have a clue?
Quoted 4 lines
Could this 2.6.11.8 -stable patch fix it?
Subject: [04/07]partitions/msdos.cfixJoe, can you test 2.6.11.8, please?
It seems to me that this exactly the other way around. The patch is probably already in -mm and is doing what it is supposed to do: don't report partitions whose system ID == 0.
Can you try to give the empty partition a type different than zero? You don't need to make a file system on it or anything, just change the type.
Or check if the patch Randy is pointing to is already in your tree and revert it.
I think this is a good argument not to include this patch on the -stable release...
Signature · 4 lines
Paulo Marques - www.grupopie.com All that is necessary for the triumph of evil is that good men do nothing. Edmund Burke (1729 - 1797)
Quoted 16 lines · Paulo Marques
Quoted 4 lines · Randy.Dunlap
Could this 2.6.11.8 -stable patch fix it?
Subject: [04/07]partitions/msdos.cfixJoe, can you test 2.6.11.8, please?
It seems to me that this exactly the other way around. The patch is probably already in -mm and is doing what it is supposed to do: don't report partitions whose system ID == 0.
Can you try to give the empty partition a type different than zero? You don't need to make a file system on it or anything, just change the type.
Or check if the patch Randy is pointing to is already in your tree and revert it.
Quoted 9 lines
I think this is a good argument not to include this patch on the -stable release...
--
Paulo Marques - www.grupopie.comAll that is necessary for the triumph of evil is that good men do nothing. Edmund Burke (1729 - 1797)
You would be correct.. that patch is already in MM.. so this issue continues, more input necessary.
Joe
Quoted 23 lines · Randy.Dunlap
On Mon, 2 May 2005 20:14:21 -0700 Greg KH wrote:
| On Mon, May 02, 2005 at 10:51:24PM -0400, Joe wrote: | > Ok, first off I'd like to say, I am on 2.6.12-rc3-mm2, and this issue | > is not fixed at all. Secondly, I'd like to say that I've pinpointed | > it a bit more. It appears only Empty partitions (type 0 in fdisk) do | > not create device nodes. | > | > Here is the partition table from fdisk, fdisk does run fine.. its just | > the fact this node is not created that threw me off before. | > | > Device Boot Start End Blocks Id System | > /dev/sdb1 * 1 2 16033+ 0 Empty | > /dev/sdb2 * 6 2431 19486845 b W95 FAT32 | > /dev/sdb3 3 5 24097+ 83 Linux | > | > | > Notice, /dev/sdb1 is a Empty partition... in /dev I only have sdb, | > sdb2, and sdb3. No sdb1. Any help would be appreciated. | | Looks like it might be a scsi issue. Redirecting to that mailing list | now. Anyone here have a clue?
Quoted 4 lines
Could this 2.6.11.8 -stable patch fix it?
Subject: [04/07]partitions/msdos.cfixJoe, can you test 2.6.11.8, please?
No, there is no problem but an intentional change in behaviour in -mm and now also in 2.6.11.8.
Andries
Quoted 2 lines · * Andries Brouwer ([email protected]) wrote:
No, there is no problem but an intentional change in behaviour in -mm and now also in 2.6.11.8.
I think this should be backed out of -stable.
Quoted 5 lines · Chris Wright
Quoted 2 lines · * Andries Brouwer ([email protected]) wrote:
No, there is no problem but an intentional change in behaviour in -mm and now also in 2.6.11.8.
I think this should be backed out of -stable.
I was surprised to find it in, after I had written
============
Date: Sat, 30 Apr 2005 21:58:07 +0200
For the time being, although I do not object to the patch, obviously, since it is my own, I cannot see any reason to add it to the "fixed" release.
============
but maybe including it was done by mistake?
It wasn't mentioned, I think, in the changelog.
There was a report that it fixed an oops,
but the report is unconfirmed and ununderstood.
Should it be backed out of 2.6.11.8? Possibly - but if it will be part of 2.6.12 or 2.6.13 then I would be inclined to leave it.
Andrew asks whether it should be removed from -mm.
Will first read all my mail and then reply to that letter. Maybe you should coordinate with Andrew and take the same decision.
Andries
Quoted 21 lines · Andries Brouwer
Quoted 5 lines · Chris Wright
Quoted 2 lines · * Andries Brouwer ([email protected]) wrote:
No, there is no problem but an intentional change in behaviour in -mm and now also in 2.6.11.8.
I think this should be backed out of -stable.
I was surprised to find it in, after I had written
============
Date: Sat, 30 Apr 2005 21:58:07 +0200For the time being, although I do not object to the patch, obviously, since it is my own, I cannot see any reason to add it to the "fixed" release.
============but maybe including it was done by mistake?
It wasn't mentioned, I think, in the changelog.
Quoted 7 lines
There was a report that it fixed an oops,
but the report is unconfirmed and ununderstood.Should it be backed out of 2.6.11.8? Possibly - but if it will be part of 2.6.12 or 2.6.13 then I would be inclined to leave it.
Andrew asks whether it should be removed from -mm.
It was merged into Linus's tree on March 8th (via bk, thank gawd. How do you find out that sort of info using git? Generating a full log is cheating).
Quoted 2 lines
Will first read all my mail and then reply to that letter. Maybe you should coordinate with Andrew and take the same decision.
I'm proposing that we revert that change from Linus's tree.
Quoted 8 lines · Andrew Morton
Quoted 4 lines
Should it be backed out of 2.6.11.8? Possibly - but if it will be part of 2.6.12 or 2.6.13 then I would be inclined to leave it.
Andrew asks whether it should be removed from -mm.
It was merged into Linus's tree on March 8th (via bk, thank gawd. How do you find out that sort of info using git? Generating a full log is cheating).
Well, moving offtopic, but it is of relevance to people who use git. The answer is that the information exists (we can use the commit tree to reconstruct the file data) but that no-one has yet come up with a file history viewing tool. I think David Woodhouse is the closest to producing one of these, David?
James
Quoted 5 lines · James Bottomley
Well, moving offtopic, but it is of relevance to people who use git. The answer is that the information exists (we can use the commit tree to reconstruct the file data) but that no-one has yet come up with a file history viewing tool. I think David Woodhouse is the closest to producing one of these, David?
I posted a script which produces output along the lines of rev-tree's, but which lists only commits relevant to a given file. However it lacked correct information about the _branchpoint_ when branches were taken. You could track the merges but not the full graph.
To do it properly would involve a modified version of rev-tree which marks the 'interesting' commits and then prunes the uninteresting parts before dumping what's left. I haven't got as far as _implementing_ that yet.
Signature · 1 line
dwmw2
Quoted 10 lines · James Bottomley
Quoted 8 lines · Andrew Morton
Quoted 4 lines
Should it be backed out of 2.6.11.8? Possibly - but if it will be part of 2.6.12 or 2.6.13 then I would be inclined to leave it.
Andrew asks whether it should be removed from -mm.
It was merged into Linus's tree on March 8th (via bk, thank gawd. How do you find out that sort of info using git? Generating a full log is cheating).
Quoted 5 lines
Well, moving offtopic, but it is of relevance to people who use git. The answer is that the information exists (we can use the commit tree to reconstruct the file data) but that no-one has yet come up with a file history viewing tool. I think David Woodhouse is the closest to producing one of these, David?
Here (replace f=<file>):
http://www.kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=history;f=lib/kobject.c
Or use Chris Mason's perl script:
http://marc.theaimsgroup.com/?l=git&m=111468881317040&w=2
I've attached it, updated to the recent git-* rename.
Thanks,
Kay
Quoted 25 lines · Andrew Morton
Quoted 24 lines · Andries Brouwer
Quoted 5 lines · Chris Wright
Quoted 2 lines · * Andries Brouwer ([email protected]) wrote:
No, there is no problem but an intentional change in behaviour in -mm and now also in 2.6.11.8.
I think this should be backed out of -stable.
I was surprised to find it in, after I had written
============
Date: Sat, 30 Apr 2005 21:58:07 +0200For the time being, although I do not object to the patch, obviously, since it is my own, I cannot see any reason to add it to the "fixed" release.
============but maybe including it was done by mistake?
It wasn't mentioned, I think, in the changelog.There was a report that it fixed an oops,
but the report is unconfirmed and ununderstood.
Quoted 8 lines
Quoted 4 lines
Should it be backed out of 2.6.11.8? Possibly - but if it will be part of 2.6.12 or 2.6.13 then I would be inclined to leave it.
Andrew asks whether it should be removed from -mm.
It was merged into Linus's tree on March 8th (via bk, thank gawd. How do you find out that sort of info using git? Generating a full log is cheating).
You can get the commit-history for a file out of the web interface. Here's another example, cause this change is not in the repository:
http://www.kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=history;f=lib/kobject.c
Thanks,
Kay
Quoted 5 lines · Chris Wright
Quoted 2 lines · * Andries Brouwer ([email protected]) wrote:
No, there is no problem but an intentional change in behaviour in -mm and now also in 2.6.11.8.
I think this should be backed out of -stable.
I agree, I'll go do it in the tree right now, sorry about this.
greg k-h
Quoted 15 lines · Greg KH
Quoted 14 lines · Joe
Ok, first off I'd like to say, I am on 2.6.12-rc3-mm2, and this issue is not fixed at all. Secondly, I'd like to say that I've pinpointed it a bit more. It appears only Empty partitions (type 0 in fdisk) do not create device nodes.
Here is the partition table from fdisk, fdisk does run fine.. its just the fact this node is not created that threw me off before.
Device Boot Start End Blocks Id System /dev/sdb1 * 1 2 16033+ 0 Empty /dev/sdb2 * 6 2431 19486845 b W95 FAT32 /dev/sdb3 3 5 24097+ 83 Linux
Quoted 5 lines
Quoted 2 lines
Notice,
/dev/sdb1is a Empty partition... in /dev I only have sdb, sdb2, and sdb3. No sdb1. Any help would be appreciated.Looks like it might be a scsi issue. Redirecting to that mailing list now. Anyone here have a clue?
Hmm - you even put this in 2.6.11.8, if I understand correctly. Was that by mistake?
Quoted 14 lines · Joe
Ok, first off I'd like to say, I am on 2.6.12-rc3-mm2, and this issue is not fixed at all. Secondly, I'd like to say that I've pinpointed it a bit more. It appears only Empty partitions (type 0 in fdisk) do not create device nodes.
Here is the partition table from fdisk, fdisk does run fine.. its just the fact this node is not created that threw me off before.
Device Boot Start End Blocks Id System /dev/sdb1 * 1 2 16033+ 0 Empty /dev/sdb2 * 6 2431 19486845 b W95 FAT32 /dev/sdb3 3 5 24097+ 83 Linux
Quoted 5 lines
Notice,
/dev/sdb1is a Empty partition... in /dev I only have sdb, sdb2, and sdb3. No sdb1. Any help would be appreciated.Thanks,
Joe
Today partition slots with partition type 0 are ignored.
I think you are the 4th I've seen to notice the change.