summaryrefslogtreecommitdiff
path: root/util-linux/umount.c
AgeCommit message (Collapse)Author
2006-08-17The kernel can't handle umount /dev/hdc, we have to do it through mtab,Rob Landley
except that we still have to work when there is no mtab. Oh, and while we're at it, take advantage of the fact that modern processors avoid branches via conditional assignment where possible. ("x = a ? b : c;" turns into "x = c; if (a) x = b;" because that way there's no branch to potentially mispredict and thus never a bubble in the pipeline. The if(a) turns into an assembly test followed by a conditional assignment (rather than a conditional jump).) So since the compiler is going to do that _anyway_, we might as well take advantage of it to produce a slightly smaller binary. So there.
2006-08-03Fix umount so loop device disassociation hopefully doesn't screw up errno onRob Landley
a failed mount. And while I'm at it, legacy mdev removal was only being done in the _failure_ case? That can't be right. Plus minor header cleanups and an option parsing tweak.
2006-08-03Remove bb_ prefixes from xfuncs.c (and a few other places), consolidateRob Landley
things like xasprintf() into xfuncs.c, remove xprint_file_by_name() (it only had one user), clean up lots of #includes... General cleanup pass. What I've been doing for the last couple days. And it conflicts! I've removed httpd.c from this checkin due to somebody else touching that file. It builds for me. I have to catch a bus. (Now you know why I'm looking forward to Mercurial.)
2006-06-15Patch from Yann Morin to put BLKGETSIZE64 in platform.h had rather a lot ofRob Landley
fallout due to the #include <sys/mount.h>. Removed that #include from various applets and fixed up those that were unhappy when that #include was made because they'd block copied stuff out of it. (Sigh.)
2006-03-17Bug fix: umount wasn't detaching loop devices unless mtab support was enabled.Rob Landley
Made some whitespace cleanups while I was there.
2006-03-06Robert P. Day removed 8 gazillion occurrences of "extern" on functionRob Landley
definitions. (That should only be on prototypes.)
2006-02-08Fix umount so it works if there's no /etc/mtab or /proc/mounts, makeRob Landley
umount -a into a CONFIG_FEATURE (why not?), and zap the now obsolete defconfig file (which was supposed to be part of the previous checkin).
2005-10-10better check usage with options, correct show problem error message, indent"Vladimir N. Oleynik"
2005-09-24Tito switched option parsing over to switch umount over to bb_getopt_ulflags().Rob Landley
2005-08-23When compiling with FEATURE_MTAB_SUPPORT disabled, the call to erase_mtab()Rob Landley
can never be made because useMtab is initialized to 0, and all the other assignments of that variable assign 0 to it. Any compiler that can perform simple constant propogation on local variables will optimize away if statements testing against that variable, thus the call to erase_mtab() will never be made. When compiling for arm using gcc 3.3.3 with FEATURE_MTAB_SUPPORT disabled, the linker complains that it can't find erase_mtab(). The arm optimizer isn't exactly the brightest member of the family, and apparently needs to be hit over the head with a hammer to get its' attention...
2005-08-10Major rewrite of mount, umount, losetup. Untangled lots of code, shrunkRob Landley
things down a bit, fixed a number of funky corner cases, added support for several new features (things like mount --move, mount --bind, lazy unounts, automatic detection of loop mounts, and so on). Probably broke several other things, but it's fixable. (Bang on it, tell me what doesn't work for you...) Note: you no longer need to say "-o loop". It does that for you when necessary. Still need to add "user mount" support, which involves making mount suid. Not too hard to do under the new infrastructure, just haven't done it yet... The previous code had the following notes, that belong in the version control comments: - * 3/21/1999 Charles P. Wright <cpwright@cpwright.com> - * searches through fstab when -a is passed - * will try mounting stuff with all fses when passed -t auto - * - * 1999-04-17 Dave Cinege...Rewrote -t auto. Fixed ro mtab. - * - * 1999-10-07 Erik Andersen <andersen@codepoet.org>. - * Rewrite of a lot of code. Removed mtab usage (I plan on - * putting it back as a compile-time option some time), - * major adjustments to option parsing, and some serious - * dieting all around. - * - * 1999-11-06 mtab support is back - andersee - * - * 2000-01-12 Ben Collins <bcollins@debian.org>, Borrowed utils-linux's - * mount to add loop support. - * - * 2000-04-30 Dave Cinege <dcinege@psychosis.com> - * Rewrote fstab while loop and lower mount section. Can now do - * single mounts from fstab. Can override fstab options for single - * mount. Common mount_one call for single mounts and 'all'. Fixed - * mtab updating and stale entries. Removed 'remount' default. - *
2004-08-03Tito, farmatito at tiscali dot it writes:Eric Andersen
Hi to all, This patch is useful for: 1) remove an unused var from extern char *find_real_root_device_name(const char* name) changing it to extern char *find_real_root_device_name(void). 2) fixes include/libbb.h, coreutils/df.c, util-linux/mount.c and util-linux/umount.c accordingly. 3) fixes a bug, really a false positive, in find_real_root_device_name() that happens if in the /dev directory exists a link named root (/dev/root) that should be skipped but is not. This affects applets like df that display wrong results
2004-03-15Remove trailing whitespace. Update copyright to include 2004.Eric Andersen
2004-02-22Patch from Chris Larson (kergoth), to allow multiple directores to beGlenn L McGrath
unmounted at once.
2003-07-14Update a bunch of docs. Run a script to update my email addr.Eric Andersen
2003-06-20Somewhere in the 2.4.x kernel series, /proc/mounts was changed to display aEric Andersen
"rootfs" entry as well as the traditional "/dev/root" entry. This caused applets such as mount and df to display two root filesystem entries.... This teaches the relevant utilities to ignore the "rootfs" entry. -Erik
2003-03-19Major coreutils update.Manuel Novoa III
2002-11-28Change if(x)free(x); to free(x);Aaron Lehmann
2001-12-20Remove `== TRUE' tests and convert `!= TRUE' and `== FALSE' tests to use !.Matt Kraai
2001-10-24Major rework of the directory structure and the entire build system.Eric Andersen
-Erik
2001-08-02Teach libc5 about realpathEric Andersen
-Erik
2001-05-15Patch from Vladimir:Eric Andersen
1) fixed a bug that could crash df, mount, and umount applets if the root device name was longer then the word "root" (/dev/loop1 vs /dev/root) - 2) severl functions needed static declaration in the umount applet 3) update declaration for function in last_char_is() in libbb
2001-05-02Canonicalize path before trying to unmount it.Matt Kraai
2001-04-01Move the mtab support stuff into libbbEric Andersen
-Erik
2001-03-21A nice patch from Larry Doolittle that adds -Wshadow andEric Andersen
cleans up most of the now-revealed problems.
2001-02-20It turns out that DODMALLOC was broken when I reorganized busybox.hEric Andersen
header file usage before the 0.49 release. To fix it, I had to move the '#include "busybox.h"' to the end of the list of #include files. -Erik
2001-02-14This patch, put together by Manuel Novoa III, is a merge of workEric Andersen
done by Evin Robertson (bug#1105) and work from Manuel to make usage messages occupy less space and simplify how usage messages are displayed.
2001-01-31Removed trailing \n from error_msg{,_and_die} messages.Matt Kraai
2001-01-27Fix up copyright msgs. Bump version to 0.49 in preparation for0_49Eric Andersen
a release. Update the website with release details. -Erik
2001-01-27Fix header file usage -- there were many unnecessary header files included inEric Andersen
busybox.h which slowed compiles. I left only what was needed and then fixed up all the apps to include their own header files. I also fixed naming for pwd.h and grp.h functions. Tested to compile and run with libc5, glibc, and uClibc. -Erik
2001-01-23#define -> static const int. Also got rid of some big static buffers.Mark Whitley
2001-01-17Fix the exit status of umount -a, a casualty of the TRUE/FALSE normalization.Matt Kraai
Thanks to Francois-R Boyer <boyerf@IRO.UMontreal.CA> for the report.
2000-12-22Use busybox error handling functions wherever possible.Matt Kraai
2000-12-07Changed names of functions in utility.c and all affected files, to makeMark Whitley
compliant with the style guide. Everybody rebuild your tags file!
2000-12-06Fix exit status on failure.Matt Kraai
2000-12-01Stop using TRUE and FALSE for exit status.Matt Kraai
2000-09-25Renamed "internal.h" to the more sensible "busybox.h".Eric Andersen
-Erik
2000-07-25Use BB_FEATURE_CLEAN_UP where appropriateEric Andersen
-Erik
2000-07-16Extract usage information into a separate file.Matt Kraai
2000-07-14Use errorMsg rather than fprintf.Matt Kraai
2000-07-12Always report the applet name when doing error reporting.Matt Kraai
2000-07-08Argh. More cross libc cleanup. Should be ok now...Eric Andersen
-Erik
2000-07-08More cleanup on umountEric Andersen
-Erik
2000-07-08Update files to reduce dependance on kernel version...Eric Andersen
-Erik
2000-06-19Finish off the libc5 porting effort. Everything now works with libc5Eric Andersen
except for md5sum, which uses the GNU libc addition getline(). -Erik
2000-06-19Make umount work and compile cleanly under libc5 and libc6.Eric Andersen
-Erik
2000-05-12Lots of updates. Finished implementing BB_FEATURE_TRIVIAL_HELPErik Andersen
which lets you compile out most of the "--help" output, saving up to 17k. Renamed mnc to nc. -Erik
2000-05-05Add support for "noatime" and "nodiratime" mount flags to mount.Erik Andersen
Change umount "-f" to mean force, and actually use umount2. Change umount "-l" to mean "Do not free loop device". Updates docs accordingly. -Erik
2000-05-03Remove BB_FEATURE_REMOUNT (small, and should always be present)Erik Andersen
and fix documentation dependancy checks, so it is only built when it should be built. -Erik
2000-04-13Upates to include copyright 2000 to everythingErik Andersen
-Erik