Loading fs/ubifs/io.c +4 −13 Original line number Diff line number Diff line Loading @@ -828,7 +828,6 @@ int ubifs_read_node(const struct ubifs_info *c, void *buf, int type, int len, int ubifs_wbuf_init(struct ubifs_info *c, struct ubifs_wbuf *wbuf) { size_t size; ktime_t hardlimit; wbuf->buf = kmalloc(c->min_io_size, GFP_KERNEL); if (!wbuf->buf) Loading @@ -854,18 +853,10 @@ int ubifs_wbuf_init(struct ubifs_info *c, struct ubifs_wbuf *wbuf) hrtimer_init(&wbuf->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); wbuf->timer.function = wbuf_timer_callback_nolock; /* * Make write-buffer soft limit to be 20% of the hard limit. The * write-buffer timer is allowed to expire any time between the soft * and hard limits. */ hardlimit = ktime_set(DEFAULT_WBUF_TIMEOUT_SECS, 0); wbuf->delta = DEFAULT_WBUF_TIMEOUT_SECS * 1000000000ULL * 2 / 10; if (wbuf->delta > ULONG_MAX) wbuf->delta = ULONG_MAX; wbuf->softlimit = ktime_sub_ns(hardlimit, wbuf->delta); hrtimer_set_expires_range_ns(&wbuf->timer, wbuf->softlimit, wbuf->delta); wbuf->softlimit = ktime_set(WBUF_TIMEOUT_SOFTLIMIT, 0); wbuf->delta = WBUF_TIMEOUT_HARDLIMIT - WBUF_TIMEOUT_SOFTLIMIT; wbuf->delta *= 1000000000ULL; ubifs_assert(wbuf->delta <= ULONG_MAX); return 0; } Loading fs/ubifs/ubifs.h +3 −2 Original line number Diff line number Diff line Loading @@ -95,8 +95,9 @@ */ #define BGT_NAME_PATTERN "ubifs_bgt%d_%d" /* Default write-buffer synchronization timeout in seconds */ #define DEFAULT_WBUF_TIMEOUT_SECS 5 /* Write-buffer synchronization timeout interval in seconds */ #define WBUF_TIMEOUT_SOFTLIMIT 3 #define WBUF_TIMEOUT_HARDLIMIT 5 /* Maximum possible inode number (only 32-bit inodes are supported now) */ #define MAX_INUM 0xFFFFFFFF Loading Loading
fs/ubifs/io.c +4 −13 Original line number Diff line number Diff line Loading @@ -828,7 +828,6 @@ int ubifs_read_node(const struct ubifs_info *c, void *buf, int type, int len, int ubifs_wbuf_init(struct ubifs_info *c, struct ubifs_wbuf *wbuf) { size_t size; ktime_t hardlimit; wbuf->buf = kmalloc(c->min_io_size, GFP_KERNEL); if (!wbuf->buf) Loading @@ -854,18 +853,10 @@ int ubifs_wbuf_init(struct ubifs_info *c, struct ubifs_wbuf *wbuf) hrtimer_init(&wbuf->timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); wbuf->timer.function = wbuf_timer_callback_nolock; /* * Make write-buffer soft limit to be 20% of the hard limit. The * write-buffer timer is allowed to expire any time between the soft * and hard limits. */ hardlimit = ktime_set(DEFAULT_WBUF_TIMEOUT_SECS, 0); wbuf->delta = DEFAULT_WBUF_TIMEOUT_SECS * 1000000000ULL * 2 / 10; if (wbuf->delta > ULONG_MAX) wbuf->delta = ULONG_MAX; wbuf->softlimit = ktime_sub_ns(hardlimit, wbuf->delta); hrtimer_set_expires_range_ns(&wbuf->timer, wbuf->softlimit, wbuf->delta); wbuf->softlimit = ktime_set(WBUF_TIMEOUT_SOFTLIMIT, 0); wbuf->delta = WBUF_TIMEOUT_HARDLIMIT - WBUF_TIMEOUT_SOFTLIMIT; wbuf->delta *= 1000000000ULL; ubifs_assert(wbuf->delta <= ULONG_MAX); return 0; } Loading
fs/ubifs/ubifs.h +3 −2 Original line number Diff line number Diff line Loading @@ -95,8 +95,9 @@ */ #define BGT_NAME_PATTERN "ubifs_bgt%d_%d" /* Default write-buffer synchronization timeout in seconds */ #define DEFAULT_WBUF_TIMEOUT_SECS 5 /* Write-buffer synchronization timeout interval in seconds */ #define WBUF_TIMEOUT_SOFTLIMIT 3 #define WBUF_TIMEOUT_HARDLIMIT 5 /* Maximum possible inode number (only 32-bit inodes are supported now) */ #define MAX_INUM 0xFFFFFFFF Loading