- 10 Aug, 2002 22 commits
-
-
Paul Menage authored
-
Linus Torvalds authored
-
Alexander Viro authored
Small, but tricky: fix for check_disk_change() deadlocks. What we do is a) opening block device shifted from check_partition() to grok_partitions(); check_partitions() takes opened struct block_device. b) all callers of check_disk_change() fall in two groups - ones that are called only from some ->open() and ones that are _never_ called from ->open(). There is no middle ground. We split the thing in two functions - check_disk_change() for the first class and full_check_.... for the second. The former (ones inside ->open()) doesn't touch partition tables but marks the bdev as "had been invalidated". In the end of do_open() we check if bdev is marked and call wipe_partitions()/check_partition() if it is - at that point bdev is fully set up and ready. c) ->bd_part_sem kludge is gone - we use ->bd_sem instead. That is, do_open() on a partition grabs ->bd_sem on entire disk and picks partition data while under it; do_open() on entire disk rereads partition if needed before dropping ->bd_sem (right before dropping it); BLKRRPART does trylock on ->bd_sem and then checks ->bd_part_count - same logics as before, except that we use ->bd_sem instead of ->bd_part_sem. That kills recursive open(), gives us the same exclusion rules as we had and makes sure that actual IO (including rereading partition tables) is done only when we are ready to do it. It actually sounds a lot nastier than it is. do_open() is a one sick puppy right now, but we have everything in one place and _out_ of drivers (and 20-odd equally sick puppies are gone from them, along with about the same number of races). Now we are almost ready to clean it up for good - all that remains to do before that is to get the rest of drivers (cciss, DAC960, i2o and a couple of ancients - xd and acsi) using per-disk gendisks. Then most of that crap will disappear. BTW, the only generic ioctl remaining in the drivers is HDIO_GETGEO - a lot of foo_ioctl() starts with if (cmd != HDIO_GETGEO) return -EINVAL; ;-)
-
Alexander Viro authored
ps2esdi.c switched to per-disk gendisks
-
Alexander Viro authored
cpqarray.c switched to per-disk gendisks
-
Alexander Viro authored
Big One. Flushing/rereading partition tables is taken from ->revalidate() for partitioned devices; now it's done in the caller (check_disk_change()). BLKRRPART handling also moved out of drivers - they are still allowed to override it (DAC960 and i2o are the only remaining ones), but common case is handled in fs/block_dev.c. Note: we are still only shifting stuff - bd_sem deadlocks in check_disk_change() are still there. However, now we have all relevant code outside of drivers and that will allow to fix the thing (see next patches).
-
Alexander Viro authored
->attach() for ide subdrivers explicitly calls register_disk() instead of ata_revalidate() now; revalidate_drives() is gone - it's not needed anymore (we _know_ that we'll read partition table as soon as driver claims the drive; no need to mess with bogus rereading).
-
Alexander Viro authored
->major_name for per-disk gendisks set to full name - i.e. IDE gendisks have "hda", "hdb", etc. instead of "hd". As the result, we kill a lot of crap in check.c::disk_name(). In particular, now we can afford ->minor_shift set to 0 for ide-cd (disk_name() was the only obstacle)
-
Alexander Viro authored
check_disk_change() converted to passing struct block_device. Old variant is still needed for a couple of places; wrapper is provided (__check_disk_change(kdev)). do_open() logics with setting ->bd_op sanitized - now we do that before calling ->open().
-
Alexander Viro authored
fix for embarrassing braino in /proc/partitions - size in kilobytes is _half_ the size in secotrs, not twice that size...
-
Alexander Viro authored
Present both in 2.4 and 2.5 ;-/
-
Christoph Hellwig authored
- inline grab_cache_page() in pagemap.h, it's just a simple wrapper around find_or_create_page() - rename (__)remove_inode_page to (__)remove_from_page_cache and move them from mm.h and swap.h to pagemap.h because they reverse add_to_page_cache and that's where they belong.
-
Ivan Kokshaysky authored
- __down_[read,write]_trylock, __downgrade_write implemented; - __builtin_expect replaced with unlikely().
-
Ivan Kokshaysky authored
Set of small fixes: - pcibios_init() must be int; - fls() - ctlz on ev67, generic on others. This was required for something several kernel releases back, now it seems to be unused. Anyway, it shouldn't hurt, so included here. - missing #includes, missing #if RTC_IRQ in drivers/char/rtc.c; - define USER_HZ; From Jeff Wiedemeier: - rename alpha-specific config section 'General setup' to 'System setup' to avoid confusion with generic 'General setup'; - fix the 'bootpfile' build.
-
Ivan Kokshaysky authored
- osf_getrusage() updated for new utime/stime fields of the task_struct; - compatibility wrappers for OSF/1 v4 readv/writev syscalls: forward port from 2.4.19.
-
Ivan Kokshaysky authored
Generic per-cpu areas; wrappers for SMP boot process.
-
Ivan Kokshaysky authored
This one is large mostly because of massive code deletion. - cli, sti an so on go away; - irq_smp.c goes to /dev/null; the only leftover (synchronize_irq) moved to irq.c; - hardirq count field in the preemption counter extended to 12 bits - one more than required for wildfire.
-
Ivan Kokshaysky authored
From Jay Estabrook: CIA rev 1 can't use DAC and windows 1,2 for SG.
-
Ivan Kokshaysky authored
Historically, assembly routines included libc header <alpha/regdef.h> for OSF/1 register names. With the new kernel build system it doesn't work anymore. Make our own copy in <include/asm>.
-
Ivan Kokshaysky authored
Hardware cpu_id to logical cpu mapping is gone. Converted to cpu_online() etc.
-
Ivan Kokshaysky authored
- send_ipi_message() fix from Jeff Wiedemeier: The 2.5.30 IPI algorithm (with the to_whom == set test) incorrectly sends IPI messages to CPU 0 in a SMP system running with one processor. In this case to_whom is often 0 (cpu_present_mask & ~1UL << smp_processor_id()) which ends up triggering the to_whom == set case. - migration IPI removed;
-
Ivan Kokshaysky authored
This starts a large set of alpha patches accumulated since 2.5.18 or even earlier. All of this was reasonably well tested. Thanks to Jeff Wiedemeier for SMP testing and fixes. - sync up with (2.5.18?) pte/pfn/page/tlb etc. macros; - asm-generic/tlb.h: loading unsigned long constant to unsigned int tlb->nr causes compiler warnings on 64 bit platforms.
-
- 09 Aug, 2002 2 commits
-
-
Linus Torvalds authored
-
Linus Torvalds authored
-
- 08 Aug, 2002 1 commit
-
-
Linus Torvalds authored
-
- 06 Aug, 2002 1 commit
-
-
bk://thebsh.namesys.com/bk/reiser3-linux-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
- 07 Aug, 2002 2 commits
-
-
Anton Altaparmakov authored
- Treat BUG_ON() as ASSERT() not VERIFY(), i.e. do not use side effects inside BUG_ON(). (Adam J. Richter) - Split logical OR expressions inside BUG_ON() into individual BUG_ON() calls for improved debugging. (Adam J. Richter) - Add errors flag to the ntfs volume state, accessed via NVol{,Set,Clear}Errors(vol). - Do not allow read-write remounts of read-only volumes with errors. - Clarify comment for ntfs file operation sendfile which was added by Christoph Hellwig a while ago (just using generic_file_sendfile()) to say that ntfs ->sendfile is only used for the case where the source data is on the ntfs partition and the destination is somewhere else, i.e. nothing we need to concern ourselves with.
-
Anton Altaparmakov authored
-
- 06 Aug, 2002 7 commits
-
-
Oleg Drokin authored
fix __FUNCTION__ usage, since its use as string literals is deprecated now.
-
Oleg Drokin authored
into angband.namesys.com:/home/green/bk_work/reiser3-linux-2.5
-
Anton Altaparmakov authored
-
Matthew Wilcox authored
- trivial: cache file->f_dentry->d_inode; saves a few bytes of compiled size. - move expand_stack inside ARCH_STACK_GROWSUP, add an alternate implementation for PA-RISC. - partially fix the comment (mmap_sem is held for READ, not for WRITE). It still doesn't make sense, saying we don't need to take the spinlock right before we take it. I expect one of the vm hackers will know what the right thing is.
-
Kai Germaschewski authored
-
Kai Germaschewski authored
Testing of course revealed some bugs introduced during the cleanups, so these are fixed here with a couple of other small bits, like improved debugging code.
-
Kai Germaschewski authored
-
- 05 Aug, 2002 5 commits
-
-
Oleg Drokin authored
into angband.namesys.com:/home/green/bk_work/reiser3-linux-2.5
-
bk://ldm.bkbits.net/linux-2.5-driverfsLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
bk://ldm.bkbits.net/linux-2.5-driverfsPatrick Mochel authored
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-driverfs
-
Patrick Mochel authored
the ones that create the file.
-
bk://jfs.bkbits.net/linux-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-