Skip to contentSkip to conversation

48 bit ATA support in Linux 2.4

DISCUSSION Robert Szentmihalyi 2 participants 3 messages May 7, 2002 – May 8, 2002

lore
Share & tools
lore
#0 lore raw

Hi Andre,

can you tell me please when your patch to support the 160 GB Matrox HDs got into the 2.4 tree (which version)? It was 2.4.14, right?

I searched the changelog but could not find it.

Also, could you please send me a copy of the patch? Google didn't find it...

I have a machine running 2.4.10-pre2-xfs with XFS support. Would the patch apply cleanly or will I have to update the kernel in order to support the drive?

Thanks,
Robert

Signature · 4 lines
Where do you want to be tomorrow?

Entracom. Building Linux systems.
http://www.entracom.de
#1 lore raw
Quoted 19 lines · Dan Chen
Quoted 3 lines · Robert Szentmihalyi

can you tell me please when your patch to support the 160 GB Matrox HDs got into the 2.4 tree (which version)? It was 2.4.14, right?

It will be available in 2.4.19 final (was merged early in the 19-pres).

[snip]

Quoted 2 lines

Also, could you please send me a copy of the patch? Google didn't find it...

See http://linuxdiskcert.org

Quoted 3 lines

I have a machine running 2.4.10-pre2-xfs with XFS support. Would the patch apply cleanly or will I have to update the kernel in order to support the drive?

Quoted 6 lines

If you're handy w/ diff and patch, you can look at *.rej after patching and manually apply the diffs.

The easiest route is probably to upgrade to a newer kernel (say, 2.4.18), and deal w/ the fewer rejects there since you'll also be applying a diff for XFS.

I have applied Andre's patch from http://linuxdiskcert.org on top of linux-2.4.19-pre7. Then I applied the XFS patches for 2.4.18 (unfortunately, the XFS-enabled kernel from the SGI-CVS is at 2.4.18 also, so it doesn't contain Ande's patch).

There is one reject in include/linux/sysctl.h I don't know how to fix:

***************
*** 140,145 ****
VM_PAGERDAEMON=8, /* struct: Control kswapd behaviour */
VM_PGT_CACHE=9, /* struct: Set page table cache parameters */
VM_PAGE_CLUSTER=10, /* int: set number of pages to swap together */
VM_MIN_READAHEAD=12, /* Min file readahead */
VM_MAX_READAHEAD=13 /* Max file readahead */
};
--- 140,148 ----
VM_PAGERDAEMON=8, /* struct: Control kswapd behaviour */
VM_PGT_CACHE=9, /* struct: Set page table cache parameters */
VM_PAGE_CLUSTER=10, /* int: set number of pages to swap together */
+ #if defined(CONFIG_XFS_FS) || defined(CONFIG_XFS_FS_MODULE)
+ VM_PAGEBUF=11, /* struct: Control pagebuf parameters */
+ #endif
VM_MIN_READAHEAD=12, /* Min file readahead */
VM_MAX_READAHEAD=13 /* Max file readahead */
};

Can anybody who knows the XFS code please tell what the alias VM_PAGEBUF in this enumeration is used for and how I could fix this?

The original 2.4.49-pre7 code seems to define another alias for 11 in this enum:

/* CTL_VM names: */
enum
{
VM_SWAPCTL=1, /* struct: Set vm swapping control */
VM_SWAPOUT=2, /* int: Linear or sqrt() swapout for hogs */
VM_FREEPG=3, /* struct: Set free page thresholds */
VM_BDFLUSH=4, /* struct: Control buffer cache flushing */
VM_OVERCOMMIT_MEMORY=5, /* Turn off the virtual memory safety limit */
VM_BUFFERMEM=6, /* struct: Set buffer memory thresholds */
VM_PAGECACHE=7, /* struct: Set cache memory thresholds */
VM_PAGERDAEMON=8, /* struct: Control kswapd behaviour */
VM_PGT_CACHE=9, /* struct: Set page table cache parameters */
VM_PAGE_CLUSTER=10, /* int: set number of pages to swap together */
VM_MAX_MAP_COUNT=11, /* int: Maximum number of active map areas */
VM_MIN_READAHEAD=12, /* Min file readahead */
VM_MAX_READAHEAD=13, /* Max file readahead */
};

Any hints?

Thanks for your help,
Robert

Quoted 5 lines

Alternately, -aa has XFS in his branch, but Andre's patches will clash. You'll need to rip out Jens's highmem-i/o patches from -aa if you want Andre's patch to apply cleanly on top of 2.4.X-pre-aaY. (They can still be applied manually, however.)

Signature · 4 lines
Where do you want to be tomorrow?

Entracom. Building Linux systems.
http://www.entracom.de
#2 lore raw
Quoted 24 lines · Robert Szentmihalyi

Can anybody who knows the XFS code please tell what the alias VM_PAGEBUF in this enumeration is used for and how I could fix this?

The original 2.4.49-pre7 code seems to define another alias for 11 in this enum:

/* CTL_VM names: */
enum
{
VM_SWAPCTL=1, /* struct: Set vm swapping control */
VM_SWAPOUT=2, /* int: Linear or sqrt() swapout for hogs */
VM_FREEPG=3, /* struct: Set free page thresholds */
VM_BDFLUSH=4, /* struct: Control buffer cache flushing */
VM_OVERCOMMIT_MEMORY=5, /* Turn off the virtual memory safety limit */
VM_BUFFERMEM=6, /* struct: Set buffer memory thresholds */
VM_PAGECACHE=7, /* struct: Set cache memory thresholds */
VM_PAGERDAEMON=8, /* struct: Control kswapd behaviour */
VM_PGT_CACHE=9, /* struct: Set page table cache parameters */
VM_PAGE_CLUSTER=10, /* int: set number of pages to swap together */
VM_MAX_MAP_COUNT=11, /* int: Maximum number of active map areas */
VM_MIN_READAHEAD=12, /* Min file readahead */
VM_MAX_READAHEAD=13, /* Max file readahead */
};

Quoted 2 lines

Any hints?

Just push the VM_PAGEBUF number up to an unused value, there are no user space programs which actually use it, just the /proc interface is normally used for this.

Steve

Signature · 2 lines
Steve Lord                                      voice: +1-651-683-3511
Principal Engineer, Filesystem Software         email: [email protected]