2.6.39 merge window part 1
- The open by handle system calls have
been added. The final form of the API is:
int name_to_handle_at(int dfd, const char *name, struct file_handle *handle, int *mnt_id, int flag); int open_by_handle_at(int dirfd, struct file_handle *handle, int flags);
This functionality is intended for use by user-space file servers, which can more efficiently track files using file handles.
- The open() system call has a new flag: O_PATH. A
file opened with this flag will have had its path resolved by the
kernel and
is known to exist, but there is little else that can be done with it.
System calls which operate on file descriptors directly
(close() or dup(), for example) will work; these
file descriptors can also be passed to another process over
Unix-domain sockets using SCM_RIGHTS datagrams. The reason
for the existence of
O_PATH file descriptors is for use as the directory file
descriptor in the various "*at()" system calls.
- Tasks in the SCHED_IDLE class are now allowed to upgrade
themselves into the SCHED_BATCH or SCHED_OTHER
classes if their "nice" rlimit is adequate.
- There is a new system call which allows the adjustment of POSIX
clocks:
int clock_adjtime(clock_id which_clock, struct timex *time);
Time adjustments possible are the same as for adjtimex(), but specific POSIX clocks may not support all operations.
- The CLOCK_BOOTTIME POSIX clock has
been added.
- The new Smack SMACK64MMAP attribute can be used to control when
specific libraries can be mapped by running programs.
- New hardware support includes:
- Systems and processors: Intel "SandyBridge" CPUs,
CompuLab TrimSlice boards,
and several variations of the Seaboard evaluation platform.
- Block: ARASAN CompactFlash PATA controllers.
- Miscellaneous: picoXcell IPSEC and Layer2 crypto engines.
- Systems and processors: Intel "SandyBridge" CPUs,
CompuLab TrimSlice boards,
and several variations of the Seaboard evaluation platform.
Changes visible to kernel developers include:
- There is a new interrupt flag (IRQF_FORCE_RESUME) which
forces the interrupt to be re-enabled at resume time regardless of
whether it was disabled during suspend.
- The kernel can now force (almost) all interrupt handlers to be run in
threads; this capability is controlled with the threadirqs
command line option. This is a useful debugging feature, as a
crashing interrupt handler will, when running in a thread, merely
cause a kernel oops instead of bringing down the whole system.
Interrupt handlers which should never be forced into threads can be
marked with IRQF_NO_THREAD, but its use is expected to be rare.
- The object debugging infrastructure
now allows the specification of a "debug hint" function; it returns an
address which can be used to better identify a specific object. See
this
commit for details.
- The long-deprecated SPIN_LOCK_UNLOCKED and
RW_LOCK_UNLOCKED lock initializers have been removed.
- The perf events subsystem has a new monitoring mode wherein it only
watches processes belonging to a specific control group. The new
-G option to perf provides access to this
functionality.
- The directed yield feature has been
added to the fair scheduler; this feature should improve performance
for guests virtualized with KVM.
- There is a new mechanism for the dynamic addition of POSIX clocks; see
<linux/posix_clock.h> for the details of the interface.
- The x86 architecture has gained minimal device tree support.
- There is a new global workqueue called system_freezable_wq;
it differs from the others in that it can be frozen at suspend time.
- Core subsystems can make use of the new syscore_ops mechanism to register power management callbacks without the need to create otherwise useless system devices.
If the usual rules apply, the 2.6.39 merge window can be expected to close
around March 29, and the 2.6.39 release should happen around the first
week of June.
Index entries for this article | |
---|---|
Kernel | Releases/2.6.39 |
Posted Mar 17, 2011 1:54 UTC (Thu)
by kvaneesh (subscriber, #45646)
[Link]
Posted Mar 17, 2011 19:34 UTC (Thu)
by abacus (guest, #49001)
[Link] (1 responses)
Posted Mar 25, 2011 5:19 UTC (Fri)
by kabloom (guest, #59417)
[Link]
"The RT people have actually been pretty good at slipping their stuff in,
Posted Mar 18, 2011 0:19 UTC (Fri)
by cesarb (subscriber, #6266)
[Link] (1 responses)
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-...
Posted Apr 22, 2011 6:32 UTC (Fri)
by neilbrown (subscriber, #359)
[Link]
suggest that there is still some cleaning up that could be done. In particular 'lock_depth' still exists in 'struct task_struct' but is never changed from -1.. :-)
2.6.39 merge window part 1
http://git.kernel.org/?p=fs/ext2/kvaneesh/handle-test.git;...
Handling interrupts in thread context
Handling interrupts in thread context
in small increments, and always with good reasons for why they aren't
crazy.
...
And yeah, I still think the hard-RT people are mostly crazy."
The BKL is gone
The BKL is gone
git grep -iw bkl