diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-04-21 12:42:58 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-04-21 12:42:58 -0400 |
commit | 1fc149933fd49a5b0e7738dc0853dbfbac4ae0e1 (patch) | |
tree | dfe99751c21aaf39e49765379d0b9b32114c757d /tools | |
parent | 41d5e08ea86af3359239d5a6f7021cdc61beaa49 (diff) | |
parent | ea5505fabd3b59608750bfd3721d0f8bc5c8b0bb (diff) |
Merge tag 'char-misc-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc
Pull char/misc driver updates from Greg KH:
"Here's the big char/misc driver patchset for 4.1-rc1.
Lots of different driver subsystem updates here, nothing major, full
details are in the shortlog.
All of this has been in linux-next for a while"
* tag 'char-misc-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (133 commits)
mei: trace: remove unused TRACE_SYSTEM_STRING
DTS: ARM: OMAP3-N900: Add lis3lv02d support
Documentation: DT: lis302: update wakeup binding
lis3lv02d: DT: add wakeup unit 2 and wakeup threshold
lis3lv02d: DT: use s32 to support negative values
Drivers: hv: hv_balloon: correctly handle num_pages>INT_MAX case
Drivers: hv: hv_balloon: correctly handle val.freeram<num_pages case
mei: replace check for connection instead of transitioning
mei: use mei_cl_is_connected consistently
mei: fix mei_poll operation
hv_vmbus: Add gradually increased delay for retries in vmbus_post_msg()
Drivers: hv: hv_balloon: survive ballooning request with num_pages=0
Drivers: hv: hv_balloon: eliminate jumps in piecewiese linear floor function
Drivers: hv: hv_balloon: do not online pages in offline blocks
hv: remove the per-channel workqueue
hv: don't schedule new works in vmbus_onoffer()/vmbus_onoffer_rescind()
hv: run non-blocking message handlers in the dispatch tasklet
coresight: moving to new "hwtracing" directory
coresight-tmc: Adding a status interface to sysfs
coresight: remove the unnecessary configuration coresight-default-sink
...
Diffstat (limited to 'tools')
-rw-r--r-- | tools/hv/Makefile | 2 | ||||
-rw-r--r-- | tools/hv/hv_vss_daemon.c | 10 |
2 files changed, 9 insertions, 3 deletions
diff --git a/tools/hv/Makefile b/tools/hv/Makefile index 99ffe61051a7..a8ab79556926 100644 --- a/tools/hv/Makefile +++ b/tools/hv/Makefile | |||
@@ -3,7 +3,7 @@ | |||
3 | CC = $(CROSS_COMPILE)gcc | 3 | CC = $(CROSS_COMPILE)gcc |
4 | PTHREAD_LIBS = -lpthread | 4 | PTHREAD_LIBS = -lpthread |
5 | WARNINGS = -Wall -Wextra | 5 | WARNINGS = -Wall -Wextra |
6 | CFLAGS = $(WARNINGS) -g $(PTHREAD_LIBS) | 6 | CFLAGS = $(WARNINGS) -g $(PTHREAD_LIBS) $(shell getconf LFS_CFLAGS) |
7 | 7 | ||
8 | all: hv_kvp_daemon hv_vss_daemon hv_fcopy_daemon | 8 | all: hv_kvp_daemon hv_vss_daemon hv_fcopy_daemon |
9 | %: %.c | 9 | %: %.c |
diff --git a/tools/hv/hv_vss_daemon.c b/tools/hv/hv_vss_daemon.c index 5e63f70bd956..506dd0148828 100644 --- a/tools/hv/hv_vss_daemon.c +++ b/tools/hv/hv_vss_daemon.c | |||
@@ -81,6 +81,7 @@ static int vss_operate(int operation) | |||
81 | char match[] = "/dev/"; | 81 | char match[] = "/dev/"; |
82 | FILE *mounts; | 82 | FILE *mounts; |
83 | struct mntent *ent; | 83 | struct mntent *ent; |
84 | char errdir[1024] = {0}; | ||
84 | unsigned int cmd; | 85 | unsigned int cmd; |
85 | int error = 0, root_seen = 0, save_errno = 0; | 86 | int error = 0, root_seen = 0, save_errno = 0; |
86 | 87 | ||
@@ -115,6 +116,8 @@ static int vss_operate(int operation) | |||
115 | goto err; | 116 | goto err; |
116 | } | 117 | } |
117 | 118 | ||
119 | endmntent(mounts); | ||
120 | |||
118 | if (root_seen) { | 121 | if (root_seen) { |
119 | error |= vss_do_freeze("/", cmd); | 122 | error |= vss_do_freeze("/", cmd); |
120 | if (error && operation == VSS_OP_FREEZE) | 123 | if (error && operation == VSS_OP_FREEZE) |
@@ -124,16 +127,19 @@ static int vss_operate(int operation) | |||
124 | goto out; | 127 | goto out; |
125 | err: | 128 | err: |
126 | save_errno = errno; | 129 | save_errno = errno; |
130 | if (ent) { | ||
131 | strncpy(errdir, ent->mnt_dir, sizeof(errdir)-1); | ||
132 | endmntent(mounts); | ||
133 | } | ||
127 | vss_operate(VSS_OP_THAW); | 134 | vss_operate(VSS_OP_THAW); |
128 | /* Call syslog after we thaw all filesystems */ | 135 | /* Call syslog after we thaw all filesystems */ |
129 | if (ent) | 136 | if (ent) |
130 | syslog(LOG_ERR, "FREEZE of %s failed; error:%d %s", | 137 | syslog(LOG_ERR, "FREEZE of %s failed; error:%d %s", |
131 | ent->mnt_dir, save_errno, strerror(save_errno)); | 138 | errdir, save_errno, strerror(save_errno)); |
132 | else | 139 | else |
133 | syslog(LOG_ERR, "FREEZE of / failed; error:%d %s", save_errno, | 140 | syslog(LOG_ERR, "FREEZE of / failed; error:%d %s", save_errno, |
134 | strerror(save_errno)); | 141 | strerror(save_errno)); |
135 | out: | 142 | out: |
136 | endmntent(mounts); | ||
137 | return error; | 143 | return error; |
138 | } | 144 | } |
139 | 145 | ||