14
14
----------------------------------------------------------------------
17
- bugfix: AUFS_LHASH_PATCH depends on AUFS_FAKE_DM = n, reported by
18
Russell Harmon and Heinrich Rebehn.
19
- bugfix: a xino-truncation thread must not wait for other threads.
20
- add a note about setting 'n.'
21
- move all the declaration from super.h to branch.h.
22
- rename struct xino to xino_entry.
23
- rename au_opt_xino_trunc to au_opt_xino_itrunc.
24
- preparing new xino files (unfinished).
27
- bugfix: a race in revalidating a dentry, reported by Jason Lunz.
28
- bugfix: specifying noxino at mount time, reported by Jason Lunz.
29
- bugfix: stop using /tmp/aufsvars.mk (complete fix for last ci).
30
- bugfix: stop using /tmp/uloopvars.mk.
31
- introduce truncating xino files (experimental), reported by Jason
32
Lunz. it will be removed if nobody is interested.
34
+ define blkcnt_t type for linux-2.6.16.
35
+ new options trunc_xino, notrunc_xino, trunc_xino=<branch path>,
36
and itrunc_xino=<branch index>.
37
+ new functions xino_trunc() and au_test_trunc_xino().
38
+ new functions xino_do_trunc(), xino_try_trunc() and xino_trunc().
39
+ new macros AUFS_XINO_TRUNC_INIT and AUFS_XINO_TRUNC_STEP.
40
- introduce new patches, ubuntu-2.6.22-14.46.patch and
42
+ extract a patch for ubuntu-edgy.
45
- begin supporting linux-2.6.24.
46
+ introduce CONFIG_AUFS_SEC_PERM_PATCH and a new patch for kernel,
47
sec_perm-2.6.24.patch.
48
+ call vfsub_notify_change() twice when the branch is NFS and
49
s[ug]id bit is set to the inode.
50
+ the type of an argument for export functions are changed to struct
52
+ find_exported_dentry operation is removed.
53
+ support noexec mount option for a branch.
54
+ ignore mode when clearing s[ug]id bit.
55
- introduce a new policy for create, pmfs (parent and then mfs) mode.
56
- a new sample for ULOOP driver, ulobdev, which supports generic block
58
- bugix: try removing /tmp/aufsvars.mk after becoming useless,
59
reported by Russell Harmon (but it cannot be supported fully).
60
- add a note about 'make -f local.mk kconfig'
63
- introduce a new semantics for link(2) and rename(2), and three
64
policies to select one among multiple writable branches (completed).
65
+ implement a new create policy 'mfsrr.'
66
- bugfix: remove __exit attribute from sysaufs_fin().
67
- replace 'hidden_' prefix by 'h_.'
68
- refine to support every version of realtime patch.
71
- introduce a new semantics for link(2) and rename(2), and three
72
policies to select one among multiple writable branches (testing).
73
+ support atomic_create in round robin mode.
74
+ a new function au_wbr() for link(2) and rename(2).
75
+ a new policy mfs and mfsrr.
76
+ call ->init and ->fin at setting the option.
78
+ implement copyup policies.
79
- remove an unused parameter of au_dtime_revert().
80
- consolidate nameidata for lower branches (uncompleted).
81
+ a new function au_dup_nd().
84
- bugfix: memory leak in an error path of handling FMODE_EXEC.
85
+ initialize a spinlock in hdentry by new funcions
86
au_h_dentry_init() and au_h_dentry_init_all().
87
+ free the unused filp.
88
+ always copy FMODE_EXEC flag.
89
+ refine au_find_h_intent().
90
+ refine using a spinlock in hdentry.
91
+ open the lower file explicitly when the stored nameidata.intent is
93
- bugfix: support inode which has lower inodes unmatching with dentry.
94
- introduce a new semantics for link(2) and rename(2), and two
95
policies to select one among multiple writable branches (testing).
96
+ a new semantics for link(2) and rename(2) is enabled by default,
97
while it is still testing and the documentation is commented out.
98
+ refine copy up/down by adding some parameters.
99
+ revise an error message.
100
+ new functions au_update_dbrange() and au_update_dbend().
101
+ add some members for policies.
102
+ new function au_cpdown_dirs().
103
+ new functions vfsub_sio_mkdir() and vfsub_sio_rmdir().
104
+ implement round-robin policy.
105
- support 'tri-state' of lower d_revalidate().
106
- enable CONFIG_AUFS_RR_SQUASHFS by default, suggested by Julian
108
- replace 'hiide_' prefix by 'h_'.
111
- bugfix: introduce a new patch deny_write_access.patch and configuration
112
CONFIG_AUFS_DENY_WRITE_ACCESS_PATCH, reported and tested by Ulrich
114
+ leave atomic open and let the lower filesystem handle it even if
115
FMODE_EXEC was specified, and make it deny write access later.
116
+ keep the dirty trick to handle FMODE_EXEC in aufs.
117
+ refine the trick to handle FMODE_EXEC by checking inode and its
118
mode, but still it is dirty.
119
+ call {deny,allow}_write_access() when aufs is linked statically or
120
CONFIG_AUFS_DENY_WRITE_ACCESS_PATCH is enabled.
121
- add a note about exporting aufs via NFS.
124
- bugfix(SMP): memory barrier to flush f_mode in case of FMODE_EXEC.
125
- the modification on 20071026 was my mistake. it was not a bug. refined
127
- a new file Tips, some tips for using aufs.
128
- introduce two policies to select one among multiple writable
129
branches (unfinished).
130
+ new options create_policy and copyup_policy, and handlers for them.
131
+ new file wbr_policy.c
132
+ re-write some functions to select a writable branch, and move them
133
from branch.c to wbr_policy.c.
134
+ new function au_cp_dirs() which is a framework to support copy-up
136
+ refine au_cpup_dirs() by au_cp_dirs().
137
+ remove find_rw_br().
138
+ consolidate several args of au_wr_dir() into single structure with
140
+ new macros AuWbrCreate() and AuWbrCopyup().
141
- refine flags corresponding to mount options
142
+ a new structure au_opts_flags.
143
+ a new function au_opts_flags_def().
144
+ refine br_perm_str(), udba_str() and coo_str() by
145
a new function au_parser_pattern(), and rename them to
146
au_optstr_br_perm(), au_optstr_udba() and au_optstr_coo()
148
+ remove udba_set() and coo_set().
149
+ replace au_flag_test() by a new macro AuFlag().
150
+ replace au_flag_clr() by a new macro AuFlagSet().
151
+ replace au_flag_set() by a new macro AuFlagSet().
152
+ refine au_flag_test_udba_inotify().
153
+ rename need_dlgt() to au_need_dlgt().
154
- minor optimization for new_br_id().
155
- re-define FMODE_EXEC for backward compatibility.
156
- rename 'hidden_' prefix to 'h_'.
157
- use macros in linux/compiler.h. (unfinished)
158
- Tomas M made a donation. Thank you very much.
161
- bugfix: mis-typing dentry and src_dentry. totally wrong.
164
- security enhancement or possible bug fix: support FMODE_EXEC and
165
{deny,allow}_write_access() for an executable and put_write_access()
166
for an open file for writing on a branch. for linux-2.6.17 and later.
167
- bugfix: replace a direct access to dentry->d_parent by
169
- create patch sub directory and move all patches under it, suggested
170
by Julian Andres Klode.
171
- support GFP_TEMPORARY which will be introduced into mainline kernel
173
- refine ignoring the internal inotify, completed.
174
+ stop using the isdir parameter of au_dtime_revert.
175
+ remove unnecessary variable.
176
+ stop locking the hidden grand parent dir.
177
+ remove a lock for the hidden grand parent dir.
178
+ new inode info lock class parent4.
179
- replace dget_parent() by a direct access to dentry->d_parent where
180
the inode mutex is locked, in order to get better performance.
181
- support debug printing an empty file object.
182
- define trivial ilog2 macro to support old kernels.
185
- bugfix: at decoding a nfs handle, in the slowest way which will be
186
invoked after other two method's failure, aufs generates the path
187
for the decode target inode. and there was a bug in generating the
188
path. when the inode is decoded by the two preceding methods, you
189
will not meet this problem. this bug was reported by Luis Carlos
191
- bugfix: typo in AUFS_PUT_FILP_PATCH, reported by Sandino Flores Moreno.
192
- testing writable nfs branch,
193
+ new function au_h_create() replacing au_fake_nd_create() +
195
- rename some symbols,
196
+ au_is_nfs() --> au_test_nfs()
197
+ au_is_def_rr() --> au_test_def_rr()
198
+ do_is_overlap() --> do_test_overlap()
200
+ au_is_subdir() --> au_test_subdir()
201
+ is_overlap_loopback --> test_overlap_loopback()
202
+ is_overlap() --> test_overlap()
203
+ au_is_aufs() --> au_test_aufs()
204
+ sbr_is_whable() --> sbr_whable()
205
+ au_is_debug() --> au_test_debug()
206
+ is_au_wkq() --> au_test_wkq()
207
+ is_anon() --> AuTestAnon()
208
+ au_is_loopback() --> au_test_loopback()
209
+ au_is_fuse() --> au_test_fuse()
210
+ au_is_unique_ino() --> au_test_unique_ino()
211
+ au_is_nfsd() --> au_test_nfsd()
212
- add module prefix to some symbols.
213
- replacing si_flags by several bit fields (draft).
216
- bugfix: remove the debug messages for nfsv4, reported by Bertrand D.
217
- bugfix: remove BUG_ON macro for debug in verifying mount options.
218
- introduce AUFS_SUPER_MAGIC with temporary value.
219
- refine ignoring the internal inotify.
220
+ remove a parameter of cpup_iattr(), cpup_regular(),
221
au_copy_file(), cpup_entry(), cpup_single(), sio_cpup_single(),
222
cpup_simple(), sio_cpup_simple().
223
+ remove au_flags_cpup(), struct cpup_args, cpup_init(), cpup_real_dir().
224
+ introduce struct au_cpup_flags.
225
- add a module prefix to some symbols.
226
- minor (cosmetic level) changes.
227
- rename some symbols,
228
+ au_init_vdir() --> au_vdir_init()
229
+ au_fin_finfo() --> au_finfo_fin()
230
+ hidden_open() --> au_h_open()
231
+ au_is_mmapped() --> au_test_mmapped()
232
+ au_is_plinked() --> au_test_plinked()
233
+ test_empty() --> au_test_empty()
234
+ au_init_vdir() --> au_vdir_init()
235
+ free_vdir() --> au_vdir_free()
236
+ is_longer_wh() --> nhash_test_longer_wh()
237
+ test_known_wh() --> nhash_test_known_wh()
238
+ append_wh() --> nash_append_wh()
239
+ init_hinotify() --> au_hin_init()
240
+ alloc_hinotify() --> au_hin_alloc()
241
+ free_hinotify() --> au_hin_free()
242
- rename the prefix 'hidden_' to 'h_' for some symbols.
243
- call au_hin_free() directly.
246
- bugfix: name collision on ia64, reported and patched by Julian
247
Andres Klode, Daniel Baumann, Otavio Salvador and dann frazier (I
248
replaced si_flags by au_si_flags instead of aufs_si_flags).
249
- bugfix: when aufs is linked statically, /tmp/aufsvars.mk is
250
unnecessary, reported by Tapani Raikkonen.
251
- support nfsv4 branch with improving nfsv3 branch (still testing)
252
+ handle nfsv4 in the same way as nfsv3 by lhash.patch.
253
+ CONFIG_AUFS_FAKE_DM must be disabled when using NFS (both nfsv3
254
and v4) as an aufs branch in linux-2.6.19 and later.
255
+ CONFIG_AUFS_PUT_FILP and CONFIG_AUFS_LHASH_PATCH must be enabled
256
when using NFS (both nfsv3 and v4) as an aufs branch in
257
linux-2.6.19 and later.
258
+ gave up calling generic vfs_path_lookup() because aufs has to
259
unlock the dir mutex temporary which must be inacceptable. and
260
reverting the locking order of br_wh_rwsem in last ci.
261
+ support atomic open in nfsv4 in looking-up a whiteout.
262
+ support atomic open in nfsv4 at revalidating dentry by keeping a
264
+ use nameidata for the internal file creation with disabling
265
CONFIG_AUFS_FAKE_DM, new function fake_nd_create().
266
+ new macro intent() for wrapping the list in aufs_hdentry.
267
+ a new simple wrapper named hintent_put().
268
- move the definition of au_subsys_t from sysaufs.h from aufs.h.
269
- refine ignoring the internal inotify.
270
+ merge hin_ignore cache into hinotify.
271
+ revert a parameter of some vfsub functions.
272
+ revert the lock for the grand parent dir.
273
+ remove unnecessary events in aufs_read() and aufs_splice_read().
274
+ lock inotify_mutex at modifying the mask.
275
+ new function vfsub_ign_hinode().
276
+ add a parameter to dtime_restore().
277
+ a new macro init_hinotify() as a simple wrapper.
278
+ rename vfsub_init() to vfsub_args_init().
279
+ new small function itohi().
280
+ a global variable au_hin_nignore.
281
+ remove hin_ignore.h introduce in last ci.
282
- reduce IMustLock() debug macro with centralizing into vfsub
284
- rename au_lkup_args to aufs_ndx.
285
- rename is_wh() to au_test_wh().
286
- rename is_diropq() to au_test_diropq().
287
- support fuse inode attributes in splice(2).
290
- bugfix: whiteout list may be obsoleted while aufs was sleeping,
291
reported by Torsten Luettgert.
292
- begin supporting linux-2.6.23, still testing on rc6.
294
+ introduce aufs_fault().
295
+ new patches and configurations,
296
* splice-2.6.23.patch + AUFS_SPLICE_PATCH
297
* put_flip.patch + AUFS_PUT_FILP_PATCH
298
* sysfs_get_dentry.patch + AUFS_SYSFS_GET_DENTRY_PATCH
299
+ generate an auxiliary makefile /tmp/aufsvars.mk
300
+ remove a parameter from kmem_cache_create().
301
- begin supporting nfsv4, still testing.
302
+ support atomic_lookup and atomic_open.
303
+ refine the definition of AuNoNfsBranch, and move from branch.h to
305
+ lock br_wh_rwsem before h_dir, since aufs has to release the mutex
306
for h_dir before vfs_path_lookup() and then lock it again.
307
+ add an argument to hidden_open() as search-key.
308
+ prepend prefix 'au_' to lkup_hash(), lkup_one(), do_lookup() and
310
+ introduce au_fake_intent(), au_hin_after_reval() and au_lkup_intent().
311
+ add some members to struct lkup_args and set prefix 'au_'.
312
- describe about patches.
313
- introduce a counter for the internal inotify events to be ignored,
314
unfinished and most of them will be removed soon.
315
+ new header file hin_ignore.h.
316
+ stop locking the hidden parent dir.
319
- bugfix: according to C99 6.10.3, the behaviour is undefined for
320
preprocessor directive within a macro argument, reported by Al Boldi
322
- bugfix: replace the preceding single quotation by backquote,
324
- introducing a new patch for openvz, openvz_028stab039.1.patch.
325
- preparing to support linux-2.6.23 (unfinished)
326
+ new configuration CONFIG_AUFS_SPLICE_PATCH and
327
CONFIG_AUFS_SYSFS_GET_DENTRY_PATCH.
328
+ generate an auxiliary makefile /tmp/aufsvars.mk
329
+ begin supporting nfsv4, calling new VFS function vfs_path_lookup().
330
+ new functions for default nfs export operations.
331
+ support splice(2), and sendfile operation is dropped.
332
+ support inode operation truncate_range() and fallocate().
333
+ the function signature of kmem_cache_create() is changed.
334
+ warn about CONFIG_AUFS_SYSFS_GET_DENTRY_PATCH and
335
CONFIG_AUFS_SPLICE_PATCH at compile time.
336
+ the parameter of bin_attribute.{read,write}() is changed.
337
- new configuration CONFIG_AUFS_RR_SQUASHFS.
338
+ rename au_is_rr() to au_is_def_rr() and make it simple.
339
+ udf is not set RR by default, suggested by Tomas M.
340
- remove a configuration CONFIG_AUFS_ISSUBDIR_PATCH which has less
342
- refine the AUFS_BRANCH_MAX warning message at compile time.
345
- a new sample, linux-vserver.txt.
348
- bugfix: handling whiteout in dlgt mode.
349
- bugfix: support umask in dlgt mode.
350
- uncomment AUFS_DLGT and dlgt option.
353
no news is good news.
356
- fixing typos, reported by Justin Pryzby.
357
- refine au_update_fuse_h_inode(), reported by Tomas M.
358
+ stop creating temporary anonymous dentry.
359
+ more verbose debug print.
362
- bugfix: force unlinking when CONFIG_AUFS_DLGT is enabled.
363
- bugfix: neg to pos by udba case. it is degrade bug which was born on
365
- bugfix: an error code of reval_inode().
366
- refine au_update_fuse_h_inode(),
367
+ wrapping by vfsub routines.
368
+ vfsub wrapper for __lookup_hash() and lookup_one_len().
369
+ remove dlgt in h_d_revalidate().
370
+ call it from fsync_dir() and aufs_fsync_dir().
371
+ call it from aufs_flush(), aufs_mmap(), aufs_sendfile() and
373
+ support getattr operation.
374
+ call it from hidden_readlink()
375
+ stop calling it from au_copy_file().
376
+ extract a part of if as a new macro au_is_fuse(), and move it from
378
+ call it from call_notify_change()
379
+ do not support dlgt option.
380
+ always ignore the error code.
381
+ call it for the target dentry and its parent from
382
do_vfsub_create(), do_vfsub_symlink(), do_vfsub_mknod(),
383
do_vfsub_link(), do_vfsub_rename(), do_vfsub_mkdir(),
384
do_vfsub_rmdir(), do_vfsub_unlink(), do_vfsub_read_u(),
385
do_vfsub_write_u() and do_vfsub_readdir().
386
+ call it from do_xino_fwrite().
387
+ do not call it from xib_pindex(), xino_new_ino(), xino_read(),
388
xino_create2(), do_xib_restore() and xino_set_xib().
391
- new sample, ULOOP driver and a daemon for http.
392
- describe about EXDEV error of rename(2) dir, reported by Jorgen
394
- stop unnecessary getattr for fuse.
397
- gave up supporting multiple xino files per a branch, which means the
398
limitation of the largest value of inode number remains.
399
- introduce CONFIG_AUFS_WORKAROUND_FUSE.
400
- support fuse inode at copyup.
401
- add a note about user's Makefile, posted by Russell Harmon.
402
- add Acknowledgements.
403
- more verbose at deleting a branch.
404
- warn before processing a large file when CONFIG_AUFS_DEBUG is
406
- refine calling au_update_fuse_h_inode().
407
- begin of splice_read(), introducing au_is_loopback().
408
- stop using ARRAY_SIZE() macro since sparse warns.
411
- bugfix: sysrq.h requires errno.h when MagicSysRq is disabled,
412
reported by Christian Hoffmann.
413
- beginning of a temporary workaround for fuse, make lookup-ed inode
415
- use fs-magic number instead of fs-type string.
416
- support larger inode number
417
- there is a limitation of the largest value of inode number which
418
will be addressd in the future.
421
- bugfix: cpup whiteout which was called #2 in last ci.
422
- begin supporting linux-2.6.22
423
+ introduce lhash patch for 2.6.22.
424
+ no more ksize.patch.
425
- introduce new branch permission 'rr.'
426
+ rename au_is_ro() to au_is_rr().
427
- introduce new (re)mount option, 'verbose' family, currently for
428
deleting a branch only.
429
- support MagicSysRq key for debugging.
430
- testing CONFIG_AUFS_ROBR.
431
- testing new mount option for 'refreshing opened file'
432
+ a generation to branch.
433
+ typedef for every generation data.
434
+ stop packing branch id and si generation.
435
+ return of 'coo' option.
436
- discard pre-allocated block for xino bitmap.
437
- add a note about unmounting ore remounting root aufs at shutdown
439
- minor optimization for handling udba=inotify.
440
- rename hi_lock_XXX() to vfsub_i_lock_nested().
441
- rename hi_unlock() to vfsub_i_unlock().
442
- print inotify info for inode.
443
- move lock subclasses from hinode.h to vfsub.h.
446
- bugfix: force rewind at re-initializing vdir, reported by Michael
447
Towers, Jorgen P. Tjerno and Sandino Flores Moreno.
448
- bugfix: copyup unlinked file.
449
+ bug #1, the file may or may not be opened, aufs needs to hold the
450
copied-up temporary dentry, reported by Andreas Baetz.
451
+ bug #2, the file may be opened in multiple times.
452
+ stop dropping in cpup_regular().
453
+ revert AuDebugOn() from temporary WARN_ON().
454
+ move cpup_wh_file() in file.c to cpup.c as generic cpup_wh().
455
+ print wh_dentry in iinfo.
456
+ set wh_dentry in iifno.
457
+ call cpup_wh() when the file was removed.
458
- bugfix: overflow in multiply, reported by Jorgen P. Tjerno and Alexey
460
- bugfix: possible overflow in multiply.
461
- si_read/write_lock() supports AuLock_FLUSH which flushes the
462
remaining hinotify handler.
463
- maintain the number of 'nowait' tasks.
464
- testing where si_read_trylock() should be called.
465
- testing CONFIG_AUFS_ROBR
466
- ksize.patch will be unnecessary after linux-2.6.22, kzrealloc() calls
468
- extract a part of inode.h as a new file hinode.h.
469
- support lockdep at removing nfs branch.
470
- use hi_lock/unlock() for a hidden inodes, instead of i_lock/unlock().
471
- rename AUFS_[ID]_[RW]LOCK to AuLock_[ID][RW].
472
- rename i_lock/unlock() to vfsub_i_lock/unlock().
473
- rename filldir_ino_t to au_filldir_ino_t.
474
- rename AUFS_{DEBLK,NHASH}_SIZE to AuSize_{DEBLK,NHASH}.
475
- refine the message string.
476
- move au_hinotifyq to wkq.h as au_nowait_tasks, new inline functions
477
au_nwt_{init,inc,dec,flush}().
478
- move read/writef_t to super.h.
479
- rename find_sb_locked() to find_sb_lock().
480
- extract a part of this file as vserver.patch.
481
- consolidate arguments of do_diropq() as flags.
482
- consolidate arguments of au_wkq_run() as flags.
486
- bugfix: use SMP-safe atomic_{inc,dec}_return().
487
- bugfix: memory barrier after atomic_set().
488
- bugfix: make lower dir opaque even if it is empty, to keep xino consistency.
489
- introduce external inode number bitmap.
490
+ remove backward compatibility atomic_long.
491
+ rename xino_init() to xino_br().
492
+ move br_xino_{read,write} to si_x{read,write}.
493
+ check the unlinked but remaining pseudo-link.
494
+ leave xino for the remove file/dir, instead clear them in iinfo.
495
+ maintain inode attributes and xino for the rename-target and the
497
+ maintain xino for the removed file.
498
+ new options 'trunc_xib' and 'notrunc_xib'
499
+ truncate the xino bitmap at deleting a branch by default.
500
+ show the bitmap file size in sysfs.
501
+ free the bitmap buffer at unmounting.
503
+ wait for the completion of 'notified' tasks at revalidating.
504
+ wait for the completion of 'notified' tasks at lookup.
505
+ re-construct internal functions.
506
+ support clearing xino
507
+ maintain digen recursively when a dir was renamed
508
+ introduce wait-able 'nowait' task.
509
+ stop unnecessary write to xino.
510
+ support for whiteouts.
511
+ stop unnecessary digen in IN_MOVE_SELF.
512
+ leave digen for the renamed dir.
513
+ modify the 'broken ino' msg to reflect the problem correctly.
514
- describe about the inode number of the directly renamed dir and its
515
warning, which was called incorrectly as 'broken ino' msg.
516
- describe about the compilation on a distribution (or customized)
518
- I forgot to mention about /etc/default/auplink
519
- rename 'changable' to 'changeable.'
520
- warn about aufs specific EXDEV error.
521
- define rw_{read,write}_trylock().
522
- rename 'au_xxx_opts()' to 'au_opts_xxx().'
523
- warn inotify without xino.
524
- move need_dlgt() from vfsub.h to to super.h.
525
- temporary support for imod option.
526
- introduce rt-compat.patch.
529
- bugfix: skip non-aufs files at changing the branch permission,
530
reported by Igor Karasynskyi.
531
- bugfix: test isolated inodes too at deleting branch, reported by
533
- bugfix: call iput() for the isolated inode on the deleted branch,
535
- bugfix: detect newly appeared whiteout which exists on a inserted
537
- bugfix: refresh all dentries and inodes when adding/modifying a
538
whiteout-able branch, and deleting a branch.
539
- temporary workaround for the inode number 1 on cramfs.
540
- note for discontinuous inode numbers.
541
- refine option handling and some function arguments.
542
- stop firing inotify when rename_whtmp().
543
- restore iigen after fired inotify when rename dir.
544
- set 0 to bindex explicitly when prepending a branch.
545
- testing cpup, xino, MagicSysRq key.
548
- bugfix: declare 'signed char', a portability problem reported by
550
- bugfix: strict branch index check at the first adding, reported by
552
- bugfix: unlink a whiteout under a dir who has a sticky bit, reported
554
- warn about overlapped branches when the top-dir is moved.
555
- remove unnecessary dget_parent(), restoring a part of last ci.
556
- testing 'imod' mount option.
557
- add a note about an empty file in cramfs.
558
- add a note about swapfile.
561
- testing dir-lock in open(2).
562
- describe about the aufs message and errno in the manual, suggested
17
566
- the unionctl script is moved from util/ to sample/, and will not be
18
567
supported any more.