2.3.99-pre8: ht6560b driver bug

From: Wolfgang Fritz (wolfgang.fritz@gmx.net)
Date: Sun May 21 2000 - 13:22:13 EST


1. 2.3.99-pre8: ht6560b driver bug

2. The driver for the ht6560b chipset cannot be initialized.
The following boot messages show up:
----------
Linux version 2.3.99-pre8 (root@eddie) (gcc version egcs-2.91.66
19990314/Linux
(egcs-1.1.2 release)) #12 Sam Mai 20 17:43:57 MEST 2000
On node 0 totalpages: 8192
zone(0): 4096 pages.
zone(1): 4096 pages.
zone(2): 0 pages.
Initializing CPU#0
ide_setup: ide0=ht6560b
kmem_alloc: NULL ptr (name=unknown)
ht6560b: PORT 0x3e6 ALREADY IN USE

Console: colour VGA+ 80x25
Calibrating delay loop... 26.52 BogoMIPS
Memory: 30564k/32768k available (918k kernel code, 1816k reserved, 64k
data, 40k
 init, 0k highmem)
Checking if this processor honours the WP bit even in supervisor mode...
Ok.
Dentry-cache hash table entries: 4096 (order: 3, 32768 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
kmem_create: Poisoning requested, but con given - bdev_cache
Inode-cache hash table entries: 2048 (order: 2, 16384 bytes)
kmem_create: Poisoning requested, but con given - inode_cache
... etc
-----------

The problem is in the function
void __init init_ht6560b (void)
It calls the function check_region, which finally calls kmalloc. This
kmalloc fails because the cache_sizes array is not yet initialized. To
prove this, I inserted printk's at some points, which give

-------------
Linux version 2.3.99-pre8 (root@eddie) (gcc version egcs-2.91.66
19990314/Linux
On node 0 totalpages: 8192
zone(0): 4096 pages.
zone(1): 4096 pages.
zone(2): 0 pages.
Initializing CPU#0
ide_setup: ide0=ht6560b
***** called by check_region from init_ht6560b
__request_region (0xc01e947c, 0x3e6, 1, check-region)
kmem_alloc: NULL ptr (name=unknown)
ht6560b: PORT 0x3e6 ALREADY IN USE

Console: colour VGA+ 80x25
Calibrating delay loop... 26.52 BogoMIPS
Memory: 30564k/32768k available (918k kernel code, 1816k reserved, 64k
data, 40k
Checking if this processor honours the WP bit even in supervisor mode...
Ok.
***** cache_sizes initialized here
kmem_cache_sizes_init
Dentry-cache hash table entries: 4096 (order: 3, 32768 bytes)
Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
kmem_create: Poisoning requested, but con given - bdev_cache
Inode-cache hash table entries: 2048 (order: 2, 16384 bytes)
----------------

3. ide ht6560 check_region

4. see above

5. n/a

6. n/a

7. n/a

W. Fritz

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Tue May 23 2000 - 21:00:20 EST