2002-07-09 10:20:18

by Jens Axboe

[permalink] [raw]
Subject: [PATCH] 2.4 IDE core for 2.5

Hi,

I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
to 2.5.25. It consists of 7 separate patches:

00_25ide-compile-1
Fix 2.5 IDE compilation problem with ide_fix_driveid()

05_25pci-ids-1
Add missing 2.4 IDE adapter pci ids

10_24ide-core-1
Add 2.4 IDE core, modified for 2.5 changes

15_24-misc-bits-1
various bits and pieces to make 2.4 IDE core work

20_split-ide-config-1
Split 2.4 and 2.5 IDE configuration

25_ide-build-1
allow 2.4 and 2.5 ide to be built

30_ide-scsi-1
Add 2.4 ide-scsi version (note that 2.5 with 2.4 ide calls it
ide-scsi24.o currently, I'll take patches to rectify that).

Find them all here:

*.kernel.org://pub/linux/kernel/people/axboe/patches/v2.5/2.5.25/

So why did I do this? Well, I needed stable IDE for 2.5 testing and it
was/is clear that 2.5 just isn't quite there yet. I intend to maintain
this patch set until I deem 2.5 IDE stable enough (in code) that I'm
willing to spend time on that instead. So the life span of this patch
depends heavily on that. That said, I know of others who would like to
be able to test 2.5 and not having to worry too much about the
state-of-the-day of the IDE core. This patch set may be useful to them
as well.

Also some notes on why I _didn't_ do this. I didn't do it because I
think Martin is a jerk or because 2.5 IDE is forever doomed. I didn't do
this because Andre twisted my arm. I didn't do this because of some
hidden agenda.

That said, the patch works for me here. I've ripped out ide-tape and
ide-floppy (frankly, I don't think it's worth my time updating these),
but apart from that I think it's 2.4 feature complete. PIO multi count
breaks for multi page bio's, if you intend to use that you should change
MPAGE_BIO_MAX_SIZE as noted in fs/mpage.c. I'll fix that in the next
iteration.

--
Jens Axboe


2002-07-09 10:45:58

by Anton Altaparmakov

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, 9 Jul 2002, Jens Axboe wrote:
> I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> to 2.5.25. It consists of 7 separate patches:

Fantastic! Seeing that the patches are bitkeeper generated, would it be
possible for you to make a repository available with the patches? (on
bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
pull from your repository... Especially once you update the patches...

Best regards,

Anton
--
Anton Altaparmakov <aia21 at cantab.net> (replace at with @)
Linux NTFS maintainer / IRC: #ntfs on irc.openprojects.net
WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/

2002-07-09 10:47:04

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Anton Altaparmakov wrote:
> On Tue, 9 Jul 2002, Jens Axboe wrote:
> > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > to 2.5.25. It consists of 7 separate patches:
>
> Fantastic! Seeing that the patches are bitkeeper generated, would it be
> possible for you to make a repository available with the patches? (on
> bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> pull from your repository... Especially once you update the patches...

Yes they are from a bk tree here, I'll set one up on bkbits...

--
Jens Axboe

2002-07-09 10:51:32

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Vojtech Pavlik wrote:
> On Tue, Jul 09, 2002 at 12:49:35PM +0200, Jens Axboe wrote:
>
> > On Tue, Jul 09 2002, Anton Altaparmakov wrote:
> > > On Tue, 9 Jul 2002, Jens Axboe wrote:
> > > > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > > > to 2.5.25. It consists of 7 separate patches:
> > >
> > > Fantastic! Seeing that the patches are bitkeeper generated, would it be
> > > possible for you to make a repository available with the patches? (on
> > > bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> > > pull from your repository... Especially once you update the patches...
> >
> > Yes they are from a bk tree here, I'll set one up on bkbits...
>
> Cool, thanks. I guess I also will make a lot of use of those patches.
> I need to be debugging input now, not IDE. ;)

Let me add that I've only tested on x86 right now, other archs should
"just work" with a few changes to include/asm/ide.h (see the changes in
15_24-misc-bits-1).

Enjoy :-)

--
Jens Axboe

2002-07-09 10:49:05

by Vojtech Pavlik

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09, 2002 at 12:49:35PM +0200, Jens Axboe wrote:

> On Tue, Jul 09 2002, Anton Altaparmakov wrote:
> > On Tue, 9 Jul 2002, Jens Axboe wrote:
> > > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > > to 2.5.25. It consists of 7 separate patches:
> >
> > Fantastic! Seeing that the patches are bitkeeper generated, would it be
> > possible for you to make a repository available with the patches? (on
> > bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> > pull from your repository... Especially once you update the patches...
>
> Yes they are from a bk tree here, I'll set one up on bkbits...

Cool, thanks. I guess I also will make a lot of use of those patches.
I need to be debugging input now, not IDE. ;)

--
Vojtech Pavlik
SuSE Labs

2002-07-09 11:09:13

by Erik Andersen

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue Jul 09, 2002 at 12:22:49PM +0200, Jens Axboe wrote:
> Hi,
>
> I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> to 2.5.25. It consists of 7 separate patches:

Wonderful! Thus far, 2.5.x has been far too scary to try.
This patch is a sufficient safety blanket that I'm now willing
to give it a try, and I'm sure thats also the case for many
others. 2.5.x just became far more accessible. Thanks!

-Erik

--
Erik B. Andersen http://codepoet-consulting.com/
--This message was written using 73% post-consumer electrons--

2002-07-09 11:10:22

by Roy Sigurd Karlsbakk

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

hi

Should I add IDE9[4567] as well, or does these ones include previous IDE
pathes?

roy

On Tuesday 09 July 2002 12:22, Jens Axboe wrote:
> Hi,
>
> I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> to 2.5.25. It consists of 7 separate patches:
>
> 00_25ide-compile-1
> Fix 2.5 IDE compilation problem with ide_fix_driveid()
>
> 05_25pci-ids-1
> Add missing 2.4 IDE adapter pci ids
>
> 10_24ide-core-1
> Add 2.4 IDE core, modified for 2.5 changes
>
> 15_24-misc-bits-1
> various bits and pieces to make 2.4 IDE core work
>
> 20_split-ide-config-1
> Split 2.4 and 2.5 IDE configuration
>
> 25_ide-build-1
> allow 2.4 and 2.5 ide to be built
>
> 30_ide-scsi-1
> Add 2.4 ide-scsi version (note that 2.5 with 2.4 ide calls it
> ide-scsi24.o currently, I'll take patches to rectify that).
>
> Find them all here:
>
> *.kernel.org://pub/linux/kernel/people/axboe/patches/v2.5/2.5.25/
>
> So why did I do this? Well, I needed stable IDE for 2.5 testing and it
> was/is clear that 2.5 just isn't quite there yet. I intend to maintain
> this patch set until I deem 2.5 IDE stable enough (in code) that I'm
> willing to spend time on that instead. So the life span of this patch
> depends heavily on that. That said, I know of others who would like to
> be able to test 2.5 and not having to worry too much about the
> state-of-the-day of the IDE core. This patch set may be useful to them
> as well.
>
> Also some notes on why I _didn't_ do this. I didn't do it because I
> think Martin is a jerk or because 2.5 IDE is forever doomed. I didn't do
> this because Andre twisted my arm. I didn't do this because of some
> hidden agenda.
>
> That said, the patch works for me here. I've ripped out ide-tape and
> ide-floppy (frankly, I don't think it's worth my time updating these),
> but apart from that I think it's 2.4 feature complete. PIO multi count
> breaks for multi page bio's, if you intend to use that you should change
> MPAGE_BIO_MAX_SIZE as noted in fs/mpage.c. I'll fix that in the next
> iteration.

--
Roy Sigurd Karlsbakk, Datavaktmester

Computers are like air conditioners.
They stop working when you open Windows.

2002-07-09 11:15:25

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Jens Axboe wrote:
> On Tue, Jul 09 2002, Anton Altaparmakov wrote:
> > On Tue, 9 Jul 2002, Jens Axboe wrote:
> > > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > > to 2.5.25. It consists of 7 separate patches:
> >
> > Fantastic! Seeing that the patches are bitkeeper generated, would it be
> > possible for you to make a repository available with the patches? (on
> > bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> > pull from your repository... Especially once you update the patches...
>
> Yes they are from a bk tree here, I'll set one up on bkbits...

pull from http://linux25-24ide.bkbits.net/linux25-24ide

--
Jens Axboe

2002-07-09 11:21:30

by Thunder from the hill

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

Hi,

On Tue, 9 Jul 2002, Roy Sigurd Karlsbakk wrote:
> Should I add IDE9[4567] as well, or does these ones include previous IDE
> pathes?

It's Linus' current tree plus IDE. So just patch your current tree.

Regards,
Thunder
--
(Use http://www.ebb.org/ungeek if you can't decode)
------BEGIN GEEK CODE BLOCK------
Version: 3.12
GCS/E/G/S/AT d- s++:-- a? C++$ ULAVHI++++$ P++$ L++++(+++++)$ E W-$
N--- o? K? w-- O- M V$ PS+ PE- Y- PGP+ t+ 5+ X+ R- !tv b++ DI? !D G
e++++ h* r--- y-
------END GEEK CODE BLOCK------

2002-07-09 11:18:27

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Roy Sigurd Karlsbakk wrote:
> hi
>
> Should I add IDE9[4567] as well, or does these ones include previous IDE
> pathes?

Well, the whole point of this patch set is _not_ to use the 2.5 ide core
for now. When configuring your kernel, you get the choice of using
2.4-ide or 2.5-ide. If you choose 2.5-ide, then yes you should add those
patches (I guess). If you choose 2.4-ide (which most users of the patch
set would do, why else apply it?!), then it doesn't matter.

--
Jens Axboe

2002-07-09 12:39:59

by Tobias Rittweiler

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

Hello Jens,

Tuesday, July 9, 2002, 12:22:49 PM, you wrote:

JA> *.kernel.org://pub/linux/kernel/people/axboe/patches/v2.5/2.5.25/

After downloading each of the 7 .gz-patches, applying them without any
complains, I started to compile the new bzImage, but I got an error
in relation to the FAT support. By switching this support off
everything'll compile without any further problem though, and I can
boot from this image even.. :-)

<out of subject>
Before appending the error messages I want to know if `shm' is named
`shmem' in 2.5 (it seems so anyway)?
</out of subject>

Hope it will be fixed ASAP.

FYI:
CONFIG_FAT_FS=y
CONFIG_VFAT_FS=y

Make's complaints:
====================
make[1]: Entering directory `/usr/src/linux-2.5.25/scripts'
make[1]: Leaving directory `/usr/src/linux-2.5.25/scripts'
Starting the build. KBUILD_BUILTIN=1 KBUILD_MODULES=
make[1]: Entering directory `/usr/src/linux-2.5.25/init'
Generating /usr/src/linux-2.5.25/include/linux/compile.hdnsdomainname: Host name lookup failure
(unchanged)
make[1]: Leaving directory `/usr/src/linux-2.5.25/init'
make[1]: Entering directory `/usr/src/linux-2.5.25/kernel'
make[1]: Leaving directory `/usr/src/linux-2.5.25/kernel'
make[1]: Entering directory `/usr/src/linux-2.5.25/mm'
make[1]: Leaving directory `/usr/src/linux-2.5.25/mm'
make[1]: Entering directory `/usr/src/linux-2.5.25/fs'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/devfs'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/devfs'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/devpts'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/devpts'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/driverfs'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/driverfs'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/ext2'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/ext2'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/ext3'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/ext3'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/fat'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/fat'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/isofs'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/isofs'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/jbd'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/jbd'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/nls'
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/nls'
make[2]: Entering directory `/usr/src/linux-2.5.25/fs/partitions'
gcc -Wp,-MD,./.msdos.o.d -D__KERNEL__ -I/usr/src/linux-2.5.25/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common -pipe -mpreferred-stack-boundary=2 -march=i686 -nostdinc -iwithprefix include -DKBUILD_BASENAME=msdos -DEXPORT_SYMTAB -c -o msdos.o msdos.c
In file included from msdos.c:32:
/usr/src/linux-2.5.25/include/linux/ide.h:651: field `taskfile' has incomplete type
/usr/src/linux-2.5.25/include/linux/ide.h:652: field `hobfile' has incomplete type
make[2]: *** [msdos.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.5.25/fs/partitions'
make[1]: *** [partitions] Error 2
make[1]: Leaving directory `/usr/src/linux-2.5.25/fs'
make: *** [fs] Error 2


--
cheers,
Tobias

http://freebits.org

2002-07-09 12:45:59

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Tobias Rittweiler wrote:
> Hello Jens,
>
> Tuesday, July 9, 2002, 12:22:49 PM, you wrote:
>
> JA> *.kernel.org://pub/linux/kernel/people/axboe/patches/v2.5/2.5.25/
>
> After downloading each of the 7 .gz-patches, applying them without any
> complains, I started to compile the new bzImage, but I got an error
> in relation to the FAT support. By switching this support off
> everything'll compile without any further problem though, and I can
> boot from this image even.. :-)

Please send me your full .config, I'll fix this in the next version.

--
Jens Axboe

2002-07-09 12:51:35

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Tobias Rittweiler wrote:
> Hello Jens,
>
> Tuesday, July 9, 2002, 12:22:49 PM, you wrote:
>
> JA> *.kernel.org://pub/linux/kernel/people/axboe/patches/v2.5/2.5.25/
>
> After downloading each of the 7 .gz-patches, applying them without any
> complains, I started to compile the new bzImage, but I got an error
> in relation to the FAT support. By switching this support off
> everything'll compile without any further problem though, and I can
> boot from this image even.. :-)

Try doing something ala

#ifdef CONFIG_IDE_25
#include <linux/ide.h> /* IDE xlate */
#else
#include <linux/ide24.h>
#endif

instead of including ide.h directly in fs/partitions/msdos.c

Yeah it's ugly, but it should fix it for now.

--
Jens Axboe

Subject: Re: [PATCH] 2.4 IDE core for 2.5


On Tue, 9 Jul 2002, Anton Altaparmakov wrote:

> On Tue, 9 Jul 2002, Jens Axboe wrote:
> > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > to 2.5.25. It consists of 7 separate patches:
>
> Fantastic! Seeing that the patches are bitkeeper generated, would it be
> possible for you to make a repository available with the patches? (on
> bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> pull from your repository... Especially once you update the patches...

Okay, tired of fantastic ;-)
This forward port has still broken PIO transfer on errors and really
borken multi PIO writes, all due to buffer_head -> bio transition in 2.5.

Jens, you would better spend your time on enhancing block layer to
allow me fixing them cleanly...

Regards
--
Bartlomiej

> Best regards,
>
> Anton
> --
> Anton Altaparmakov <aia21 at cantab.net> (replace at with @)
> Linux NTFS maintainer / IRC: #ntfs on irc.openprojects.net
> WWW: http://linux-ntfs.sf.net/ & http://www-stu.christs.cam.ac.uk/~aia21/

2002-07-09 12:54:35

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Bartlomiej Zolnierkiewicz wrote:
>
> On Tue, 9 Jul 2002, Anton Altaparmakov wrote:
>
> > On Tue, 9 Jul 2002, Jens Axboe wrote:
> > > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > > to 2.5.25. It consists of 7 separate patches:
> >
> > Fantastic! Seeing that the patches are bitkeeper generated, would it be
> > possible for you to make a repository available with the patches? (on
> > bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> > pull from your repository... Especially once you update the patches...
>
> Okay, tired of fantastic ;-)
> This forward port has still broken PIO transfer on errors and really
> borken multi PIO writes, all due to buffer_head -> bio transition in 2.5.

As I wrote in the initial posting, yes multi pio is broken _for multi
page bio's_. Where does 2.5 break pio transfers on error? If you are
talking about a 2.4 code base error, then I don't care, you need to tell
someone else :-)

> Jens, you would better spend your time on enhancing block layer to
> allow me fixing them cleanly...

I'll fix the bio support issue for pio multi write, it's in the next
version.

--
Jens Axboe

2002-07-09 12:53:36

by Tobias Rittweiler

[permalink] [raw]
Subject: Re[2]: [PATCH] 2.4 IDE core for 2.5

Hello Jens,

Tuesday, July 9, 2002, 2:48:27 PM, you wrote:

>> After downloading each of the 7 .gz-patches, applying them without any
>> complains, I started to compile the new bzImage, but I got an error
>> in relation to the FAT support. By switching this support off
>> everything'll compile without any further problem though, and I can
>> boot from this image even.. :-)

JA> Please send me your full .config, I'll fix this in the next version.

========================================================================
CONFIG_X86=y
CONFIG_ISA=y
CONFIG_UID16=y
CONFIG_EXPERIMENTAL=y
CONFIG_NET=y
CONFIG_SYSVIPC=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_SYSCTL=y
CONFIG_MODULES=y
CONFIG_KMOD=y
CONFIG_MPENTIUMIII=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_X86_TSC=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_PREEMPT=y
CONFIG_X86_MCE=y
CONFIG_X86_MCE_NONFATAL=y
CONFIG_NOHIGHMEM=y
CONFIG_HAVE_DEC_LOCK=y
CONFIG_PM=y
CONFIG_APM=y
CONFIG_APM_DO_ENABLE=y
CONFIG_APM_DISPLAY_BLANK=y
CONFIG_APM_REAL_MODE_POWER_OFF=y
CONFIG_PCI=y
CONFIG_PCI_GOANY=y
CONFIG_PCI_BIOS=y
CONFIG_PCI_DIRECT=y
CONFIG_PCI_NAMES=y
CONFIG_HOTPLUG=y
CONFIG_PCMCIA=y
CONFIG_CARDBUS=y
CONFIG_KCORE_ELF=y
CONFIG_BINFMT_AOUT=y
CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_MISC=y
CONFIG_PARPORT=y
CONFIG_PARPORT_PC=y
CONFIG_PARPORT_PC_CML1=y
CONFIG_PNP=y
CONFIG_ISAPNP=y
CONFIG_PNPBIOS=y
CONFIG_BLK_DEV_FD=y
CONFIG_BLK_DEV_LOOP=y
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
CONFIG_PACKET=y
CONFIG_UNIX=y
CONFIG_INET=y
CONFIG_IP_MULTICAST=y
CONFIG_IPV6=y
CONFIG_IDE=y
CONFIG_IDE_24=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_CMD640=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_BLK_DEV_PIIX=y
CONFIG_BLK_DEV_RZ1000=y
CONFIG_IDEDMA_AUTO=y
CONFIG_BLK_DEV_IDE_MODES=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
CONFIG_BONDING=m
CONFIG_NET_ETHERNET=y
CONFIG_NET_PCI=y
CONFIG_E100=y
CONFIG_NET_PCMCIA=y
CONFIG_PCMCIA_PCNET=y
CONFIG_NET_PCMCIA_RADIO=y
CONFIG_PCMCIA_RAYCS=y
CONFIG_INPUT=m
CONFIG_SOUND_GAMEPORT=y
CONFIG_INPUT_KEYBOARD=y
CONFIG_INPUT_MOUSE=y
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_UNIX98_PTYS=y
CONFIG_UNIX98_PTY_COUNT=256
CONFIG_PRINTER=y
CONFIG_MOUSE=y
CONFIG_PSMOUSE=y
CONFIG_AGP=y
CONFIG_AGP_INTEL=y
CONFIG_AGP_I810=y
CONFIG_AGP_VIA=y
CONFIG_AGP_SIS=y
CONFIG_AGP_ALI=y
CONFIG_DRM=y
CONFIG_DRM_TDFX=y
CONFIG_DRM_RADEON=y
CONFIG_EXT3_FS=y
CONFIG_JBD=y
CONFIG_FAT_FS=y
CONFIG_VFAT_FS=y
CONFIG_TMPFS=y
CONFIG_RAMFS=y
CONFIG_ISO9660_FS=y
CONFIG_JOLIET=y
CONFIG_PROC_FS=y
CONFIG_DEVFS_FS=y
CONFIG_DEVFS_MOUNT=y
CONFIG_DEVPTS_FS=y
CONFIG_EXT2_FS=y
CONFIG_SMB_FS=m
CONFIG_MSDOS_PARTITION=y
CONFIG_SMB_NLS=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
CONFIG_NLS_CODEPAGE_852=y
CONFIG_NLS_ISO8859_1=y
CONFIG_NLS_ISO8859_15=y
CONFIG_VGA_CONSOLE=y
CONFIG_VIDEO_SELECT=y
CONFIG_FB=y
CONFIG_DUMMY_CONSOLE=y
CONFIG_FB_VESA=y
CONFIG_VIDEO_SELECT=y
CONFIG_FBCON_CFB24=y
CONFIG_FBCON_ACCEL=y
CONFIG_FBCON_FONTS=y
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
CONFIG_SOUND=m
CONFIG_SOUND_PRIME=m
CONFIG_SOUND_OSS=m
CONFIG_SOUND_SB=m
CONFIG_SOUND_AWE32_SYNTH=m
CONFIG_USB=m
CONFIG_USB_DEVICEFS=y
CONFIG_USB_ACM=m
========================================================================


--
cheers,
Tobias

http://freebits.org

Subject: Re: [PATCH] 2.4 IDE core for 2.5


On Tue, 9 Jul 2002, Jens Axboe wrote:

> On Tue, Jul 09 2002, Bartlomiej Zolnierkiewicz wrote:
> >
> > On Tue, 9 Jul 2002, Anton Altaparmakov wrote:
> >
> > > On Tue, 9 Jul 2002, Jens Axboe wrote:
> > > > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > > > to 2.5.25. It consists of 7 separate patches:
> > >
> > > Fantastic! Seeing that the patches are bitkeeper generated, would it be
> > > possible for you to make a repository available with the patches? (on
> > > bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> > > pull from your repository... Especially once you update the patches...
> >
> > Okay, tired of fantastic ;-)
> > This forward port has still broken PIO transfer on errors and really
> > borken multi PIO writes, all due to buffer_head -> bio transition in 2.5.
>
> As I wrote in the initial posting, yes multi pio is broken _for multi
> page bio's_. Where does 2.5 break pio transfers on error? If you are
> talking about a 2.4 code base error, then I don't care, you need to tell
> someone else :-)

PIO on error is broken _for multi page bio's_ .

> > Jens, you would better spend your time on enhancing block layer to
> > allow me fixing them cleanly...
>
> I'll fix the bio support issue for pio multi write, it's in the next
> version.

Okay, will see... :)

--
Bartlomiej

2002-07-09 13:16:20

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Bartlomiej Zolnierkiewicz wrote:
>
> On Tue, 9 Jul 2002, Jens Axboe wrote:
>
> > On Tue, Jul 09 2002, Bartlomiej Zolnierkiewicz wrote:
> > >
> > > On Tue, 9 Jul 2002, Anton Altaparmakov wrote:
> > >
> > > > On Tue, 9 Jul 2002, Jens Axboe wrote:
> > > > > I've forward ported the 2.4 IDE core (well 2.4.19-pre10-ac2 to be exact)
> > > > > to 2.5.25. It consists of 7 separate patches:
> > > >
> > > > Fantastic! Seeing that the patches are bitkeeper generated, would it be
> > > > possible for you to make a repository available with the patches? (on
> > > > bkbits perhaps?) Would make it a lot easier for us bitkeeper users just to
> > > > pull from your repository... Especially once you update the patches...
> > >
> > > Okay, tired of fantastic ;-)
> > > This forward port has still broken PIO transfer on errors and really
> > > borken multi PIO writes, all due to buffer_head -> bio transition in 2.5.
> >
> > As I wrote in the initial posting, yes multi pio is broken _for multi
> > page bio's_. Where does 2.5 break pio transfers on error? If you are
> > talking about a 2.4 code base error, then I don't care, you need to tell
> > someone else :-)
>
> PIO on error is broken _for multi page bio's_ .

Ok that falls into the same category as the multi pio one. I'll fix that
as well.

--
Jens Axboe

2002-07-09 13:27:38

by Tobias Rittweiler

[permalink] [raw]
Subject: Re[3]: [PATCH] 2.4 IDE core for 2.5

Hello Jens,

Tuesday, July 9, 2002, 2:54:12 PM, you wrote:

JA> Try doing something ala

JA> #ifdef CONFIG_IDE_25
JA> #include <linux/ide.h> /* IDE xlate */
JA> #else
JA> #include <linux/ide24.h>
JA> #endif

JA> instead of including ide.h directly in fs/partitions/msdos.c

Just a minute ago I booted and wanted to take your hint, but before
this I tried `make bzImage' again (no idea why, just for fun) and
it compiled! This results from the fact that I booted the new
kernel with the new IDE core including.

Yes, it works now. Thanks anyway, I'm sure you'll interpret this
happening rightly.

--
cheers,
Tobias

http://freebits.org

2002-07-09 20:04:32

by Andries Brouwer

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09, 2002 at 12:22:49PM +0200, Jens Axboe wrote:

> I've forward ported the 2.4 IDE core to 2.5.25.

Very good!

There are two kinds of objections.
The minor one is political - you can imagine.
The major one is technical. You did not port the 2.4 good PIO
behaviour to 2.5. Bartlomiej already warned about this, so I
need only confirm:

This afternoon I booted 2.5.25 with your patches and two more,
one to prevent an oops when shutting down, the other to fix
ethernet cards detection. Started torturing two disks on
HPT366. After 3 minutes

hde: status error: status=0x50 { DriveReady SeekComplete }
hde: no DRQ after issuing WRITE

and seven minutes later

hde: task_out_intr: status=0x51 { DriveReady SeekComplete Error }
hde: task_out_intr: error=0x04 { DriveStatusError }

Soon lots of processes were hanging in D. Reboot. e2fsck.

Then booted vanilla 2.4.17. Tortured disks in the same way.
After several hours all is still perfect. I'll leave this
for a night, but so far I have never seen these errors on 2.4
and very often in recent 2.5.

Andries

2002-07-09 21:46:24

by Miles Lane

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, 2002-07-09 at 04:20, Jens Axboe wrote:
> On Tue, Jul 09 2002, Roy Sigurd Karlsbakk wrote:
> > hi
> >
> > Should I add IDE9[4567] as well, or does these ones include previous IDE
> > pathes?
>
> Well, the whole point of this patch set is _not_ to use the 2.5 ide core
> for now. When configuring your kernel, you get the choice of using
> 2.4-ide or 2.5-ide. If you choose 2.5-ide, then yes you should add those
> patches (I guess). If you choose 2.4-ide (which most users of the patch
> set would do, why else apply it?!), then it doesn't matter.

Thankyou Jens,

It is really quite perturbing to think how much the IDE instability
has held back development of other features in the unstable kernel.
The warm reception of your patch speaks volumes.

Miles

2002-07-10 05:41:17

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Tue, Jul 09 2002, Andries Brouwer wrote:
> On Tue, Jul 09, 2002 at 12:22:49PM +0200, Jens Axboe wrote:
>
> > I've forward ported the 2.4 IDE core to 2.5.25.
>
> Very good!
>
> There are two kinds of objections.
> The minor one is political - you can imagine.

Naturally.

> The major one is technical. You did not port the 2.4 good PIO
> behaviour to 2.5. Bartlomiej already warned about this, so I
> need only confirm:
>
> This afternoon I booted 2.5.25 with your patches and two more,
> one to prevent an oops when shutting down, the other to fix
> ethernet cards detection. Started torturing two disks on
> HPT366. After 3 minutes
>
> hde: status error: status=0x50 { DriveReady SeekComplete }
> hde: no DRQ after issuing WRITE
>
> and seven minutes later
>
> hde: task_out_intr: status=0x51 { DriveReady SeekComplete Error }
> hde: task_out_intr: error=0x04 { DriveStatusError }
>
> Soon lots of processes were hanging in D. Reboot. e2fsck.

The above seems to be plain pio, you didn't use multi mode did you? I
think my current tree has the multi-page multi mode bio issue resolved,
however I'll test for some hours before sending out the next patch set.

> Then booted vanilla 2.4.17. Tortured disks in the same way.
> After several hours all is still perfect. I'll leave this
> for a night, but so far I have never seen these errors on 2.4
> and very often in recent 2.5.

Good to know.

Thanks for your report, it'll probably take a day or two before the
kinks of the 2.5 conversion have been ironed out and the ide core is as
stable as 2.4.

--
Jens Axboe

2002-07-10 11:08:37

by Jens Axboe

[permalink] [raw]
Subject: [PATCH] 2.4 IDE core for 2.5, #2 (was Re: [PATCH] 2.4 IDE core for 2.5)

On Wed, Jul 10 2002, Jens Axboe wrote:
> > This afternoon I booted 2.5.25 with your patches and two more,
> > one to prevent an oops when shutting down, the other to fix
> > ethernet cards detection. Started torturing two disks on
> > HPT366. After 3 minutes
> >
> > hde: status error: status=0x50 { DriveReady SeekComplete }
> > hde: no DRQ after issuing WRITE
> >
> > and seven minutes later
> >
> > hde: task_out_intr: status=0x51 { DriveReady SeekComplete Error }
> > hde: task_out_intr: error=0x04 { DriveStatusError }
> >
> > Soon lots of processes were hanging in D. Reboot. e2fsck.
>
> The above seems to be plain pio, you didn't use multi mode did you? I
> think my current tree has the multi-page multi mode bio issue resolved,
> however I'll test for some hours before sending out the next patch set.

Care to try the next version? I've completely disabled task file i/o
since it does seem to be broken in pio, and fixed the multi-write
multi-page bio bug as well. There are a number of other changes in
there. There are split patches like last time, but also one big patch:

*.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.25/

00_25ide-compile-1a
no changes, rediffed

05_25pci-ids-1a
no changes, rediffed

10_24ide-core-2
various fixes, see old/ for the complete list

15_24-misc-bits-2
added (broken) sparc64 bits. too lazy to revert these right,
waiting for update

20_ide-build-config-1a
consolidate config and build split

25_ide-scsi-1
no changes, rediffed

and finally,

ide24-for-2.5-2
all of the above

Also pull'able from bk://[email protected]/linux25-24ide
(soonish)

--
Jens Axboe

2002-07-11 09:52:13

by Rogier Wolff

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

Andries Brouwer wrote:
> On Tue, Jul 09, 2002 at 12:22:49PM +0200, Jens Axboe wrote:
>
> > I've forward ported the 2.4 IDE core to 2.5.25.
>
> Very good!

Ehmm. We have had "old IDE support" in the kernel for "ages". We have
two aic7xxx driver, two rtl8139 drivers, two, or more ncr53c8xx drivers.

So why in the case of IDE has the "new IDE" driver not been forked and
implemented under a new "name" such that those working on other stuff
can chose to use the "old reliable" driver while others daring to test
the new advanced rewrite can do so?

Roger.

--
** [email protected] ** http://www.BitWizard.nl/ ** +31-15-2137555 **
*-- BitWizard writes Linux device drivers for any device you may have! --*
* There are old pilots, and there are bold pilots.
* There are also old, bald pilots.

2002-07-11 09:54:18

by Jens Axboe

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5

On Thu, Jul 11 2002, Rogier Wolff wrote:
> Andries Brouwer wrote:
> > On Tue, Jul 09, 2002 at 12:22:49PM +0200, Jens Axboe wrote:
> >
> > > I've forward ported the 2.4 IDE core to 2.5.25.
> >
> > Very good!
>
> Ehmm. We have had "old IDE support" in the kernel for "ages". We have
> two aic7xxx driver, two rtl8139 drivers, two, or more ncr53c8xx drivers.
>
> So why in the case of IDE has the "new IDE" driver not been forked and
> implemented under a new "name" such that those working on other stuff
> can chose to use the "old reliable" driver while others daring to test
> the new advanced rewrite can do so?

That's a really good question, in retrospect this is what should have
happened IMO.

--
Jens Axboe

2002-07-12 11:03:36

by Andries Brouwer

[permalink] [raw]
Subject: Re: [PATCH] 2.4 IDE core for 2.5, #2 (was Re: [PATCH] 2.4 IDE core for 2.5)

On Wed, Jul 10, 2002 at 01:11:15PM +0200, Jens Axboe wrote:

> Care to try the next version? I've completely disabled task file i/o
> since it does seem to be broken in pio, and fixed the multi-write
> multi-page bio bug as well. There are a number of other changes in
> there. There are split patches like last time, but also one big patch:
>
> *.kernel.org/pub/linux/kernel/people/axboe/patches/v2.5/2.5.25/
>
> ide24-for-2.5-2
> all of the above

Had no time until now, but just tried ide24-for-2.5-3.
It did not compile, but after adding 05_25pci-ids-1a it did.
Also added

diff -u --recursive --new-file -X /linux/dontdiff a/drivers/usb/host/uhci-hcd.c b/drivers/usb/host/uhci-hcd.c
--- a/drivers/usb/host/uhci-hcd.c Mon Jun 17 19:35:40 2002
+++ b/drivers/usb/host/uhci-hcd.c Fri Jun 21 22:44:35 2002
@@ -2428,7 +2428,7 @@
return retval;
}

-static void __devexit uhci_stop(struct usb_hcd *hcd)
+static void uhci_stop(struct usb_hcd *hcd)
{
struct uhci_hcd *uhci = hcd_to_uhci(hcd);

@@ -2509,7 +2509,7 @@
suspend: uhci_suspend,
resume: uhci_resume,
#endif
- stop: __devexit_p(uhci_stop),
+ stop: uhci_stop,

hcd_alloc: uhci_hcd_alloc,
hcd_free: uhci_hcd_free,

to prevent oopses at shutdown.

The resulting kernel seems to work. Tried it only for a short time,
but maybe long enough to be confident.

[Yesterday, or the day before I installed a new distribution.
Unfortunately there are vendor modifications to kernel and
user space software, so replacing the kernel by a vanilla one
does not yield a functioning system; will also have to replace
some vendor user space stuff by vanilla stuff.]

Andries