"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "drbd/drbd-kernel-compat/cocci_cache/1f74fafb8378fd0985c9f19f9b82d6d8/compat.patch" between
drbd-9.1.10.tar.gz and drbd-9.1.11.tar.gz

About: DRBD (9.x) is a block device which is designed to build high availability clusters. This is done by mirroring a whole block device via (a dedicated) network. You could see it as a "network RAID-1". The driver code got integrated into the vanilla Linux kernel.

compat.patch  (drbd-9.1.10):compat.patch  (drbd-9.1.11)
--- ./drbd_req.h --- ./drbd_req.h
+++ /tmp/cocci-output-399732-664c46-drbd_req.h
@@ -280,7 +280,7 @@ extern void __req_mod(struct drbd_reques @@ -280,7 +280,7 @@ extern void __req_mod(struct drbd_reques
struct bio_and_error *m); struct bio_and_error *m);
extern void complete_master_bio(struct drbd_device *device, extern void complete_master_bio(struct drbd_device *device,
struct bio_and_error *m); struct bio_and_error *m);
-extern void request_timer_fn(struct timer_list *t); -extern void request_timer_fn(struct timer_list *t);
+extern void request_timer_fn(unsigned long data); +extern void request_timer_fn(unsigned long data);
extern void tl_walk(struct drbd_connection *connection, struct drbd_request **f rom_req, enum drbd_req_event what); extern void tl_walk(struct drbd_connection *connection, struct drbd_request **f rom_req, enum drbd_req_event what);
extern void __tl_walk(struct drbd_resource *const resource, extern void __tl_walk(struct drbd_resource *const resource,
struct drbd_connection *const connection, struct drbd_connection *const connection,
--- ./drbd_int.h --- ./drbd_int.h
+++ /tmp/cocci-output-399732-acc9e8-drbd_int.h
@@ -1763,7 +1763,7 @@ extern sector_t drbd_get_max_capacity( @@ -1763,7 +1763,7 @@ extern sector_t drbd_get_max_capacity(
* we limit us to a platform agnostic constant here for now. * we limit us to a platform agnostic constant here for now.
* A followup commit may allow even bigger BIO sizes, * A followup commit may allow even bigger BIO sizes,
* once we thought that through. */ * once we thought that through. */
-#define DRBD_BIO_MAX_PAGES (BIO_MAX_VECS << PAGE_SHIFT) -#define DRBD_BIO_MAX_PAGES (BIO_MAX_VECS << PAGE_SHIFT)
+#define DRBD_BIO_MAX_PAGES (BIO_MAX_PAGES << PAGE_SHIFT) +#define DRBD_BIO_MAX_PAGES (BIO_MAX_PAGES << PAGE_SHIFT)
#if DRBD_MAX_BIO_SIZE > DRBD_BIO_MAX_PAGES #if DRBD_MAX_BIO_SIZE > DRBD_BIO_MAX_PAGES
#error Architecture not supported: DRBD_MAX_BIO_SIZE > (BIO_MAX_VECS << PAGE_SH IFT) #error Architecture not supported: DRBD_MAX_BIO_SIZE > (BIO_MAX_VECS << PAGE_SH IFT)
#endif #endif
@@ -1838,8 +1838,8 @@ extern struct kmem_cache *drbd_request_c @@ -1838,8 +1838,8 @@ extern struct kmem_cache *drbd_request_c
skipping to change at line 114 skipping to change at line 114
enum write_ordering_e wo); enum write_ordering_e wo);
-extern void twopc_timer_fn(struct timer_list *t); -extern void twopc_timer_fn(struct timer_list *t);
-extern void connect_timer_fn(struct timer_list *t); -extern void connect_timer_fn(struct timer_list *t);
+extern void twopc_timer_fn(unsigned long data); +extern void twopc_timer_fn(unsigned long data);
+extern void connect_timer_fn(unsigned long data); +extern void connect_timer_fn(unsigned long data);
/* drbd_proc.c */ /* drbd_proc.c */
extern struct proc_dir_entry *drbd_proc; extern struct proc_dir_entry *drbd_proc;
--- drbd-headers/linux/genl_magic_struct.h --- drbd-headers/linux/genl_magic_struct.h
+++ /tmp/cocci-output-399732-a95633-genl_magic_struct.h
@@ -107,7 +107,7 @@ static inline int nla_put_u64_0pad(struc @@ -107,7 +107,7 @@ static inline int nla_put_u64_0pad(struc
nla_get_u64, nla_put_u64_0pad, false) nla_get_u64, nla_put_u64_0pad, false)
#define __str_field(attr_nr, attr_flag, name, maxlen) \ #define __str_field(attr_nr, attr_flag, name, maxlen) \
__array(attr_nr, attr_flag, name, NLA_NUL_STRING, char, maxlen, \ __array(attr_nr, attr_flag, name, NLA_NUL_STRING, char, maxlen, \
- nla_strscpy, nla_put, false) - nla_strscpy, nla_put, false)
+ nla_strlcpy, nla_put, false) + nla_strlcpy, nla_put, false)
#define __bin_field(attr_nr, attr_flag, name, maxlen) \ #define __bin_field(attr_nr, attr_flag, name, maxlen) \
__array(attr_nr, attr_flag, name, NLA_BINARY, char, maxlen, \ __array(attr_nr, attr_flag, name, NLA_BINARY, char, maxlen, \
nla_memcpy, nla_put, false) nla_memcpy, nla_put, false)
--- kref_debug.c --- kref_debug.c
+++ /tmp/cocci-output-399732-ecd993-kref_debug.c
@@ -108,7 +108,7 @@ void print_kref_debug_info(struct seq_fi @@ -108,7 +108,7 @@ void print_kref_debug_info(struct seq_fi
char obj_name[80]; char obj_name[80];
debug_refs = number_of_debug_refs(debug_info); debug_refs = number_of_debug_refs(debug_info);
- refs = refcount_read(&debug_info->kref->refcount); - refs = refcount_read(&debug_info->kref->refcount);
+ refs = atomic_read(&debug_info->kref->refcount); + refs = atomic_read(&debug_info->kref->refcount);
debug_info->class->get_object_name(debug_info, obj_name); debug_info->class->get_object_name(debug_info, obj_name);
seq_printf(seq, "class: %s, name: %s, refs: %d, dr: %d\n", seq_printf(seq, "class: %s, name: %s, refs: %d, dr: %d\n",
--- drbd_transport_tcp.c --- drbd_transport_tcp.c
+++ /tmp/cocci-output-399732-118b6e-drbd_transport_tcp.c
@@ -154,6 +154,33 @@ static struct drbd_path *__drbd_next_pat @@ -154,6 +154,33 @@ static struct drbd_path *__drbd_next_pat
return drbd_path; return drbd_path;
} }
+static void dtt_cork(struct socket *socket) +static void dtt_cork(struct socket *socket)
+{ +{
+ int val = 1; + int val = 1;
+ (void)kernel_setsockopt(socket, SOL_TCP, TCP_CORK, (char *)&val, + (void)kernel_setsockopt(socket, SOL_TCP, TCP_CORK, (char *)&val,
+ sizeof(val)); + sizeof(val));
+} +}
skipping to change at line 239 skipping to change at line 239
if (socket->sk->sk_socket) if (socket->sk->sk_socket)
set_bit(SOCK_NOSPACE, &socket->sk->sk_socket->flags); set_bit(SOCK_NOSPACE, &socket->sk->sk_socket->flags);
break; break;
case QUICKACK: case QUICKACK:
- tcp_sock_set_quickack(socket->sk, 2); - tcp_sock_set_quickack(socket->sk, 2);
+ dtt_quickack(socket); + dtt_quickack(socket);
break; break;
default: /* not implemented, but should not trigger error handling */ default: /* not implemented, but should not trigger error handling */
return true; return true;
--- drbd_state.c --- drbd_state.c
+++ /tmp/cocci-output-399732-6ad59a-drbd_state.c
@@ -147,7 +147,7 @@ static bool may_be_up_to_date(struct drb @@ -147,7 +147,7 @@ static bool may_be_up_to_date(struct drb
case D_DISKLESS: case D_DISKLESS:
if (!(peer_md->flags & MDF_PEER_DEVICE_SEEN)) if (!(peer_md->flags & MDF_PEER_DEVICE_SEEN))
continue; continue;
- fallthrough; - fallthrough;
+ ;/* fallthrough */ + ;/* fallthrough */
case D_ATTACHING: case D_ATTACHING:
case D_DETACHING: case D_DETACHING:
case D_FAILED: case D_FAILED:
--- drbd_sender.c --- drbd_sender.c
+++ /tmp/cocci-output-399732-0aaf3c-drbd_sender.c
@@ -22,8 +22,6 @@ @@ -22,8 +22,6 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/random.h> #include <linux/random.h>
#include <linux/scatterlist.h> #include <linux/scatterlist.h>
-#include <linux/overflow.h> -#include <linux/overflow.h>
-#include <linux/part_stat.h> -#include <linux/part_stat.h>
#include "drbd_int.h" #include "drbd_int.h"
#include "drbd_protocol.h" #include "drbd_protocol.h"
@@ -57,10 +55,10 @@ void drbd_md_endio(struct bio *bio) @@ -57,10 +55,10 @@ void drbd_md_endio(struct bio *bio)
skipping to change at line 375 skipping to change at line 375
@@ -2777,7 +2777,7 @@ static void re_init_if_first_write(struc @@ -2777,7 +2777,7 @@ static void re_init_if_first_write(struc
connection->send.current_epoch_writes = 0; connection->send.current_epoch_writes = 0;
connection->send.last_sent_barrier_jif = jiffies; connection->send.last_sent_barrier_jif = jiffies;
connection->send.current_dagtag_sector = connection->send.current_dagtag_sector =
- connection->resource->dagtag_sector - ((BIO_MAX_VECS << P AGE_SHIFT) >> 9) - 1; - connection->resource->dagtag_sector - ((BIO_MAX_VECS << P AGE_SHIFT) >> 9) - 1;
+ connection->resource->dagtag_sector - ((BIO_MAX_PAGES << PAGE_SHIFT) >> 9) - 1; + connection->resource->dagtag_sector - ((BIO_MAX_PAGES << PAGE_SHIFT) >> 9) - 1;
} }
} }
--- drbd_req.c --- drbd_req.c
+++ /tmp/cocci-output-399732-b849f2-drbd_req.c
@@ -24,7 +24,7 @@ static struct drbd_request *drbd_req_new @@ -24,7 +24,7 @@ static struct drbd_request *drbd_req_new
{ {
struct drbd_request *req; struct drbd_request *req;
- req = mempool_alloc(&drbd_request_mempool, GFP_NOIO); - req = mempool_alloc(&drbd_request_mempool, GFP_NOIO);
+ req = mempool_alloc(drbd_request_mempool, GFP_NOIO); + req = mempool_alloc(drbd_request_mempool, GFP_NOIO);
if (!req) if (!req)
return NULL; return NULL;
@@ -64,7 +64,7 @@ static struct drbd_request *drbd_req_new @@ -64,7 +64,7 @@ static struct drbd_request *drbd_req_new
skipping to change at line 422 skipping to change at line 422
@@ -507,7 +507,8 @@ void drbd_req_complete(struct drbd_reque @@ -507,7 +507,8 @@ void drbd_req_complete(struct drbd_reque
start_new_tl_epoch(device->resource); start_new_tl_epoch(device->resource);
/* Update disk stats */ /* Update disk stats */
- bio_end_io_acct(req->master_bio, req->start_jif); - bio_end_io_acct(req->master_bio, req->start_jif);
+ generic_end_io_acct(bio_data_dir(req->master_bio), + generic_end_io_acct(bio_data_dir(req->master_bio),
+ &req->device->vdisk->part0, req->start_jif); + &req->device->vdisk->part0, req->start_jif);
if (device->cached_err_io) { if (device->cached_err_io) {
ok = 0; ok = 0;
@@ -965,7 +966,7 @@ void __req_mod(struct drbd_request *req, @@ -974,7 +975,7 @@ void __req_mod(struct drbd_request *req,
case READ_COMPLETED_WITH_ERROR: case READ_COMPLETED_WITH_ERROR:
drbd_set_all_out_of_sync(device, req->i.sector, req->i.size); drbd_set_all_out_of_sync(device, req->i.sector, req->i.size);
drbd_report_io_error(device, req); drbd_report_io_error(device, req);
- fallthrough; - fallthrough;
+ ;/* fallthrough */ + ;/* fallthrough */
case READ_AHEAD_COMPLETED_WITH_ERROR: case READ_AHEAD_COMPLETED_WITH_ERROR:
mod_rq_state(req, m, peer_device, RQ_LOCAL_PENDING, RQ_LOCAL_COMP LETED); mod_rq_state(req, m, peer_device, RQ_LOCAL_PENDING, RQ_LOCAL_COMP LETED);
break; break;
@@ -1267,7 +1268,7 @@ static bool remote_due_to_read_balancing @@ -1276,7 +1277,7 @@ static bool remote_due_to_read_balancing
switch (rbm) { switch (rbm) {
case RB_CONGESTED_REMOTE: case RB_CONGESTED_REMOTE:
return bdi_read_congested( return bdi_read_congested(
- device->ldev->backing_bdev->bd_disk->bdi); - device->ldev->backing_bdev->bd_disk->bdi);
+ device->ldev->backing_bdev->bd_disk->queue->backing_dev_i nfo); + device->ldev->backing_bdev->bd_disk->queue->backing_dev_i nfo);
case RB_LEAST_PENDING: case RB_LEAST_PENDING:
return atomic_read(&device->local_cnt) > return atomic_read(&device->local_cnt) >
atomic_read(&peer_device->ap_pending_cnt) + atomic_read(& peer_device->rs_pending_cnt); atomic_read(&peer_device->ap_pending_cnt) + atomic_read(& peer_device->rs_pending_cnt);
@@ -1609,7 +1610,7 @@ static void drbd_process_discard_or_zero @@ -1618,7 +1619,7 @@ static void drbd_process_discard_or_zero
int err = drbd_issue_discard_or_zero_out(req->device, int err = drbd_issue_discard_or_zero_out(req->device,
req->i.sector, req->i.size >> 9, flags); req->i.sector, req->i.size >> 9, flags);
if (err) if (err)
- req->private_bio->bi_status = BLK_STS_IOERR; - req->private_bio->bi_status = BLK_STS_IOERR;
+ req->private_bio->bi_error = -EIO; + req->private_bio->bi_error = -EIO;
bio_endio(req->private_bio); bio_endio(req->private_bio);
} }
@@ -1627,7 +1628,7 @@ drbd_submit_req_private_bio(struct drbd_ @@ -1636,7 +1637,7 @@ drbd_submit_req_private_bio(struct drbd_
else else
type = DRBD_FAULT_DT_RD; type = DRBD_FAULT_DT_RD;
- bio_set_dev(bio, device->ldev->backing_bdev); - bio_set_dev(bio, device->ldev->backing_bdev);
+ bio->bi_bdev = device->ldev->backing_bdev; + bio->bi_bdev = device->ldev->backing_bdev;
/* State may have changed since we grabbed our reference on the /* State may have changed since we grabbed our reference on the
* device->ldev member. Double check, and short-circuit to endio. * device->ldev member. Double check, and short-circuit to endio.
@@ -1636,19 +1637,19 @@ drbd_submit_req_private_bio(struct drbd_ @@ -1645,19 +1646,19 @@ drbd_submit_req_private_bio(struct drbd_
* this bio. */ * this bio. */
if (get_ldev(device)) { if (get_ldev(device)) {
if (drbd_insert_fault(device, type)) { if (drbd_insert_fault(device, type)) {
- bio->bi_status = BLK_STS_IOERR; - bio->bi_status = BLK_STS_IOERR;
+ bio->bi_error = -EIO; + bio->bi_error = -EIO;
bio_endio(bio); bio_endio(bio);
} else if (bio_op(bio) == REQ_OP_WRITE_ZEROES) { } else if (bio_op(bio) == REQ_OP_WRITE_ZEROES) {
drbd_process_discard_or_zeroes_req(req, EE_ZEROOUT | drbd_process_discard_or_zeroes_req(req, EE_ZEROOUT |
- ((bio->bi_opf & REQ_NOUNMAP) ? 0 : EE_TRIM)); - ((bio->bi_opf & REQ_NOUNMAP) ? 0 : EE_TRIM));
+ ((false)/* NOUNMAP not supported on this kernel */ ? 0 : EE_TRIM)); + ((false)/* NOUNMAP not supported on this kernel */ ? 0 : EE_TRIM));
skipping to change at line 482 skipping to change at line 482
- submit_bio_noacct(bio); - submit_bio_noacct(bio);
+ generic_make_request(bio); + generic_make_request(bio);
} }
put_ldev(device); put_ldev(device);
} else { } else {
- bio->bi_status = BLK_STS_IOERR; - bio->bi_status = BLK_STS_IOERR;
+ bio->bi_error = -EIO; + bio->bi_error = -EIO;
bio_endio(bio); bio_endio(bio);
} }
} }
@@ -1699,16 +1700,19 @@ drbd_request_prepare(struct drbd_device @@ -1708,16 +1709,19 @@ drbd_request_prepare(struct drbd_device
/* only pass the error to the upper layers. /* only pass the error to the upper layers.
* if user cannot handle io errors, that's not our business. */ * if user cannot handle io errors, that's not our business. */
drbd_err(device, "could not kmalloc() req\n"); drbd_err(device, "could not kmalloc() req\n");
- bio->bi_status = BLK_STS_RESOURCE; - bio->bi_status = BLK_STS_RESOURCE;
+ bio->bi_error = -ENOMEM; + bio->bi_error = -ENOMEM;
bio_endio(bio); bio_endio(bio);
return ERR_PTR(-ENOMEM); return ERR_PTR(-ENOMEM);
} }
/* Update disk stats */ /* Update disk stats */
skipping to change at line 505 skipping to change at line 505
+ generic_start_io_acct(bio_data_dir(req->master_bio), req->i.size >> 9, + generic_start_io_acct(bio_data_dir(req->master_bio), req->i.size >> 9,
+ &req->device->vdisk->part0); + &req->device->vdisk->part0);
if (get_ldev(device)) { if (get_ldev(device)) {
- req->private_bio = bio_clone_fast(bio, GFP_NOIO, &drbd_io_bio_se t); - req->private_bio = bio_clone_fast(bio, GFP_NOIO, &drbd_io_bio_se t);
+ req->private_bio = bio_clone_fast(bio, GFP_NOIO, + req->private_bio = bio_clone_fast(bio, GFP_NOIO,
+ drbd_io_bio_set); + drbd_io_bio_set);
req->private_bio->bi_private = req; req->private_bio->bi_private = req;
req->private_bio->bi_end_io = drbd_request_endio; req->private_bio->bi_end_io = drbd_request_endio;
} }
@@ -2396,7 +2400,7 @@ static bool drbd_fail_request_early(stru @@ -2405,7 +2409,7 @@ static bool drbd_fail_request_early(stru
return false; return false;
} }
-void drbd_submit_bio(struct bio *bio) -void drbd_submit_bio(struct bio *bio)
+blk_qc_t drbd_make_request(struct request_queue *q, struct bio *bio) +blk_qc_t drbd_make_request(struct request_queue *q, struct bio *bio)
{ {
struct drbd_device *device = bio->bi_bdev->bd_disk->private_data; struct drbd_device *device = bio->bi_bdev->bd_disk->private_data;
#ifdef CONFIG_DRBD_TIMING_STATS #ifdef CONFIG_DRBD_TIMING_STATS
@@ -2405,17 +2409,18 @@ void drbd_submit_bio(struct bio *bio) @@ -2414,17 +2418,18 @@ void drbd_submit_bio(struct bio *bio)
unsigned long start_jif; unsigned long start_jif;
if (drbd_fail_request_early(device, bio)) { if (drbd_fail_request_early(device, bio)) {
- bio->bi_status = BLK_STS_IOERR; - bio->bi_status = BLK_STS_IOERR;
+ bio->bi_error = -EIO; + bio->bi_error = -EIO;
bio_endio(bio); bio_endio(bio);
- return; - return;
+ return BLK_QC_T_NONE; + return BLK_QC_T_NONE;
} }
skipping to change at line 538 skipping to change at line 538
if (device->cached_err_io) { if (device->cached_err_io) {
- bio->bi_status = BLK_STS_IOERR; - bio->bi_status = BLK_STS_IOERR;
+ bio->bi_error = -EIO; + bio->bi_error = -EIO;
bio_endio(bio); bio_endio(bio);
- return; - return;
+ return BLK_QC_T_NONE; + return BLK_QC_T_NONE;
} }
/* This is both an optimization: READ of size 0, nothing to do /* This is both an optimization: READ of size 0, nothing to do
@@ -2427,13 +2432,14 @@ void drbd_submit_bio(struct bio *bio) @@ -2436,13 +2441,14 @@ void drbd_submit_bio(struct bio *bio)
if (bio_op(bio) == REQ_OP_READ && bio->bi_iter.bi_size == 0) { if (bio_op(bio) == REQ_OP_READ && bio->bi_iter.bi_size == 0) {
WARN_ONCE(1, "size zero read from upper layers"); WARN_ONCE(1, "size zero read from upper layers");
bio_endio(bio); bio_endio(bio);
- return; - return;
+ return BLK_QC_T_NONE; + return BLK_QC_T_NONE;
} }
ktime_get_accounting(start_kt); ktime_get_accounting(start_kt);
start_jif = jiffies; start_jif = jiffies;
__drbd_make_request(device, bio, start_kt, start_jif); __drbd_make_request(device, bio, start_kt, start_jif);
+ return BLK_QC_T_NONE; + return BLK_QC_T_NONE;
} }
static unsigned long time_min_in_future(unsigned long now, static unsigned long time_min_in_future(unsigned long now,
@@ -2541,9 +2547,9 @@ static bool net_timeout_reached(struct d @@ -2550,9 +2556,9 @@ static bool net_timeout_reached(struct d
* to expire twice (worst case) to become effective. Good enough. * to expire twice (worst case) to become effective. Good enough.
*/ */
-void request_timer_fn(struct timer_list *t) -void request_timer_fn(struct timer_list *t)
+void request_timer_fn(unsigned long data) +void request_timer_fn(unsigned long data)
{ {
- struct drbd_device *device = from_timer(device, t, request_timer); - struct drbd_device *device = from_timer(device, t, request_timer);
+ struct drbd_device *device = (struct drbd_device *)data; + struct drbd_device *device = (struct drbd_device *)data;
struct drbd_resource *resource = device->resource; struct drbd_resource *resource = device->resource;
struct drbd_connection *connection; struct drbd_connection *connection;
struct drbd_request *req_read, *req_write; struct drbd_request *req_read, *req_write;
@@ -2709,7 +2715,7 @@ void drbd_handle_io_error_(struct drbd_d @@ -2718,7 +2724,7 @@ void drbd_handle_io_error_(struct drbd_d
} }
break; break;
} }
- fallthrough; /* for DRBD_META_IO_ERROR or DRBD_FORCE_DETACH */ - fallthrough; /* for DRBD_META_IO_ERROR or DRBD_FORCE_DETACH */
+ ;/* fallthrough */ /* for DRBD_META_IO_ERROR or DRBD_FORCE_D ETACH */ + ;/* fallthrough */ /* for DRBD_META_IO_ERROR or DRBD_FORCE_D ETACH */
case EP_DETACH: case EP_DETACH:
case EP_CALL_HELPER: case EP_CALL_HELPER:
/* Force-detach is not really an IO error, but rather a /* Force-detach is not really an IO error, but rather a
--- drbd_receiver.c --- drbd_receiver.c
+++ /tmp/cocci-output-399732-98f229-drbd_receiver.c
@@ -32,7 +32,6 @@ @@ -32,7 +32,6 @@
#include <linux/random.h> #include <linux/random.h>
#include <net/ipv6.h> #include <net/ipv6.h>
#include <linux/scatterlist.h> #include <linux/scatterlist.h>
-#include <linux/part_stat.h> -#include <linux/part_stat.h>
#include "drbd_int.h" #include "drbd_int.h"
#include "drbd_protocol.h" #include "drbd_protocol.h"
@@ -577,7 +576,7 @@ drbd_alloc_peer_req(struct drbd_peer_dev @@ -577,7 +576,7 @@ drbd_alloc_peer_req(struct drbd_peer_dev
if (drbd_insert_fault(device, DRBD_FAULT_AL_EE)) if (drbd_insert_fault(device, DRBD_FAULT_AL_EE))
skipping to change at line 790 skipping to change at line 790
+ int ____rv2; + int ____rv2;
+ ____rv2 = sched_setscheduler(current, SCHED_RR, &param); + ____rv2 = sched_setscheduler(current, SCHED_RR, &param);
+ if (____rv2 < 0) + if (____rv2 < 0)
+ drbd_err(connection, + drbd_err(connection,
+ "drbd_ack_receiver: ERROR set priority, ret=%d\n", + "drbd_ack_receiver: ERROR set priority, ret=%d\n",
+ ____rv2); + ____rv2);
while (get_t_state(thi) == RUNNING) { while (get_t_state(thi) == RUNNING) {
drbd_thread_current_set_cpu(thi); drbd_thread_current_set_cpu(thi);
--- drbd_nl.c --- drbd_nl.c
+++ /tmp/cocci-output-399732-9d5628-drbd_nl.c
@@ -114,7 +114,7 @@ static int drbd_msg_put_info(struct sk_b @@ -114,7 +114,7 @@ static int drbd_msg_put_info(struct sk_b
if (!info || !info[0]) if (!info || !info[0])
return 0; return 0;
- nla = nla_nest_start_noflag(skb, DRBD_NLA_CFG_REPLY); - nla = nla_nest_start_noflag(skb, DRBD_NLA_CFG_REPLY);
+ nla = nla_nest_start(skb, DRBD_NLA_CFG_REPLY); + nla = nla_nest_start(skb, DRBD_NLA_CFG_REPLY);
if (!nla) if (!nla)
return err; return err;
@@ -141,7 +141,7 @@ static int drbd_msg_sprintf_info(struct @@ -141,7 +141,7 @@ static int drbd_msg_sprintf_info(struct
skipping to change at line 919 skipping to change at line 919
@@ -5641,7 +5664,7 @@ int drbd_adm_dump_connections_done(struc @@ -5641,7 +5664,7 @@ int drbd_adm_dump_connections_done(struc
static int connection_paths_to_skb(struct sk_buff *skb, struct drbd_connection *connection) static int connection_paths_to_skb(struct sk_buff *skb, struct drbd_connection *connection)
{ {
struct drbd_path *path; struct drbd_path *path;
- struct nlattr *tla = nla_nest_start_noflag(skb, DRBD_NLA_PATH_PARMS); - struct nlattr *tla = nla_nest_start_noflag(skb, DRBD_NLA_PATH_PARMS);
+ struct nlattr *tla = nla_nest_start(skb, DRBD_NLA_PATH_PARMS); + struct nlattr *tla = nla_nest_start(skb, DRBD_NLA_PATH_PARMS);
if (!tla) if (!tla)
goto nla_put_failure; goto nla_put_failure;
--- drbd_nla.c --- drbd_nla.c
+++ /tmp/cocci-output-399732-9e3389-drbd_nla.c
@@ -35,8 +35,7 @@ int drbd_nla_parse_nested(struct nlattr @@ -35,8 +35,7 @@ int drbd_nla_parse_nested(struct nlattr
err = drbd_nla_check_mandatory(maxtype, nla); err = drbd_nla_check_mandatory(maxtype, nla);
if (!err) if (!err)
- err = nla_parse_nested_deprecated(tb, maxtype, nla, policy, - err = nla_parse_nested_deprecated(tb, maxtype, nla, policy,
- NULL); - NULL);
+ err = nla_parse_nested(tb, maxtype, nla, policy, NULL); + err = nla_parse_nested(tb, maxtype, nla, policy, NULL);
return err; return err;
} }
--- drbd_main.c --- drbd_main.c
+++ /tmp/cocci-output-399732-ee403a-drbd_main.c
@@ -54,7 +54,7 @@ @@ -54,7 +54,7 @@
static int drbd_open(struct block_device *bdev, fmode_t mode); static int drbd_open(struct block_device *bdev, fmode_t mode);
static void drbd_release(struct gendisk *gd, fmode_t mode); static void drbd_release(struct gendisk *gd, fmode_t mode);
-static void md_sync_timer_fn(struct timer_list *t); -static void md_sync_timer_fn(struct timer_list *t);
+static void md_sync_timer_fn(unsigned long data); +static void md_sync_timer_fn(unsigned long data);
static int w_bitmap_io(struct drbd_work *w, int unused); static int w_bitmap_io(struct drbd_work *w, int unused);
static int flush_send_buffer(struct drbd_connection *connection, enum drbd_stre am drbd_stream); static int flush_send_buffer(struct drbd_connection *connection, enum drbd_stre am drbd_stream);
static u64 __set_bitmap_slots(struct drbd_device *device, u64 bitmap_uuid, u64 do_nodes) __must_hold(local); static u64 __set_bitmap_slots(struct drbd_device *device, u64 bitmap_uuid, u64 do_nodes) __must_hold(local);
@@ -70,6 +70,7 @@ MODULE_PARM_DESC(minor_count, "Approxima @@ -70,6 +70,7 @@ MODULE_PARM_DESC(minor_count, "Approxima
skipping to change at line 1381 skipping to change at line 1381
-static void md_sync_timer_fn(struct timer_list *t) -static void md_sync_timer_fn(struct timer_list *t)
+static void md_sync_timer_fn(unsigned long data) +static void md_sync_timer_fn(unsigned long data)
{ {
- struct drbd_device *device = from_timer(device, t, md_sync_timer); - struct drbd_device *device = from_timer(device, t, md_sync_timer);
+ struct drbd_device *device = (struct drbd_device *)data; + struct drbd_device *device = (struct drbd_device *)data;
drbd_device_post_work(device, MD_SYNC); drbd_device_post_work(device, MD_SYNC);
} }
--- drbd_interval.c --- drbd_interval.c
+++ /tmp/cocci-output-399732-380729-drbd_interval.c
@@ -13,10 +13,32 @@ sector_t interval_end(struct rb_node *no @@ -13,10 +13,32 @@ sector_t interval_end(struct rb_node *no
return this->end; return this->end;
} }
-#define NODE_END(node) ((node)->sector + ((node)->size >> 9)) -#define NODE_END(node) ((node)->sector + ((node)->size >> 9))
+/** +/**
+ * compute_subtree_last - compute end of @node + * compute_subtree_last - compute end of @node
+ * + *
+ * The end of an interval is the highest (start + (size >> 9)) value of this + * The end of an interval is the highest (start + (size >> 9)) value of this
+ * node and of its children. Called for @node and its parents whenever the end + * node and of its children. Called for @node and its parents whenever the end
skipping to change at line 1419 skipping to change at line 1419
+} +}
#define _STATIC static #define _STATIC static
-RB_DECLARE_CALLBACKS_MAX(_STATIC, augment_callbacks, struct drbd_interval, rb, -RB_DECLARE_CALLBACKS_MAX(_STATIC, augment_callbacks, struct drbd_interval, rb,
- sector_t, end, NODE_END); - sector_t, end, NODE_END);
+RB_DECLARE_CALLBACKS(_STATIC, augment_callbacks, struct drbd_interval, rb, +RB_DECLARE_CALLBACKS(_STATIC, augment_callbacks, struct drbd_interval, rb,
+ sector_t, end, compute_subtree_last); + sector_t, end, compute_subtree_last);
/* /*
* drbd_insert_interval - insert a new interval into a tree * drbd_insert_interval - insert a new interval into a tree
--- drbd_debugfs.c --- drbd_debugfs.c
+++ /tmp/cocci-output-399732-b2d794-drbd_debugfs.c
@@ -1827,6 +1827,65 @@ static const struct file_operations drbd @@ -1827,6 +1827,65 @@ static const struct file_operations drbd
static int drbd_compat_show(struct seq_file *m, void *ignored) static int drbd_compat_show(struct seq_file *m, void *ignored)
{ {
+ seq_puts(m, "timer_setup__no_present\n"); + seq_puts(m, "timer_setup__no_present\n");
+ seq_puts(m, "blk_queue_split__yes_has_three_parameters\n"); + seq_puts(m, "blk_queue_split__yes_has_three_parameters\n");
+ seq_puts(m, "make_request__yes_need_recursion\n"); + seq_puts(m, "make_request__yes_need_recursion\n");
+ seq_puts(m, "bio_alloc__no_has_4_params\n"); + seq_puts(m, "bio_alloc__no_has_4_params\n");
+ seq_puts(m, "bio_set_dev__no_present\n"); + seq_puts(m, "bio_set_dev__no_present\n");
+ seq_puts(m, "refcount_inc__no_present\n"); + seq_puts(m, "refcount_inc__no_present\n");
skipping to change at line 1487 skipping to change at line 1487
+ seq_puts(m, "gendisk_part0__no_is_block_device\n"); + seq_puts(m, "gendisk_part0__no_is_block_device\n");
+ seq_puts(m, "bio_max_vecs__no_present\n"); + seq_puts(m, "bio_max_vecs__no_present\n");
+ seq_puts(m, "fs_dax_get_by_bdev__no_present\n"); + seq_puts(m, "fs_dax_get_by_bdev__no_present\n");
+ seq_puts(m, "add_disk__no_returns_int\n"); + seq_puts(m, "add_disk__no_returns_int\n");
+ seq_puts(m, "bdev_nr_sectors__no_present\n"); + seq_puts(m, "bdev_nr_sectors__no_present\n");
+ seq_puts(m, "genhd_fl_no_part__no_present\n"); + seq_puts(m, "genhd_fl_no_part__no_present\n");
return 0; return 0;
} }
--- drbd_dax_pmem.c --- drbd_dax_pmem.c
+++ /tmp/cocci-output-399732-4cedce-drbd_dax_pmem.c
@@ -58,9 +58,9 @@ int drbd_dax_open(struct drbd_backing_de @@ -58,9 +58,9 @@ int drbd_dax_open(struct drbd_backing_de
{ {
struct dax_device *dax_dev; struct dax_device *dax_dev;
int err; int err;
- u64 part_off; - u64 part_off;
- -
- dax_dev = fs_dax_get_by_bdev(bdev->md_bdev, &part_off); - dax_dev = fs_dax_get_by_bdev(bdev->md_bdev, &part_off);
+ if (!blk_queue_dax(bdev->md_bdev->bd_queue)) + if (!blk_queue_dax(bdev->md_bdev->bd_queue))
+ return -ENODEV; + return -ENODEV;
+ dax_dev = fs_dax_get_by_host(bdev->md_bdev->bd_disk->disk_name); + dax_dev = fs_dax_get_by_host(bdev->md_bdev->bd_disk->disk_name);
if (!dax_dev) if (!dax_dev)
return -ENODEV; return -ENODEV;
--- drbd_bitmap.c --- drbd_bitmap.c
+++ /tmp/cocci-output-399732-1ed951-drbd_bitmap.c
@@ -365,7 +365,8 @@ static struct page **bm_realloc_pages(st @@ -365,7 +365,8 @@ static struct page **bm_realloc_pages(st
new_pages = kzalloc(bytes, GFP_NOIO | __GFP_NOWARN); new_pages = kzalloc(bytes, GFP_NOIO | __GFP_NOWARN);
if (!new_pages) { if (!new_pages) {
new_pages = __vmalloc(bytes, new_pages = __vmalloc(bytes,
- GFP_NOIO | __GFP_HIGHMEM | __GFP_ZERO); - GFP_NOIO | __GFP_HIGHMEM | __GFP_ZERO);
+ GFP_NOIO | __GFP_HIGHMEM | __GFP_ZERO, + GFP_NOIO | __GFP_HIGHMEM | __GFP_ZERO,
+ PAGE_KERNEL); + PAGE_KERNEL);
if (!new_pages) if (!new_pages)
return NULL; return NULL;
} }
skipping to change at line 1572 skipping to change at line 1572
bio->bi_end_io = drbd_bm_endio; bio->bi_end_io = drbd_bm_endio;
+ bio->bi_opf = op; + bio->bi_opf = op;
if (drbd_insert_fault(device, (op == REQ_OP_WRITE) ? DRBD_FAULT_MD_WR : D RBD_FAULT_MD_RD)) { if (drbd_insert_fault(device, (op == REQ_OP_WRITE) ? DRBD_FAULT_MD_WR : D RBD_FAULT_MD_RD)) {
- bio->bi_status = BLK_STS_IOERR; - bio->bi_status = BLK_STS_IOERR;
+ bio->bi_error = -EIO; + bio->bi_error = -EIO;
bio_endio(bio); bio_endio(bio);
} else { } else {
submit_bio(bio); submit_bio(bio);
--- drbd_actlog.c --- drbd_actlog.c
+++ /tmp/cocci-output-399732-239fe4-drbd_actlog.c
@@ -94,14 +94,15 @@ static int _drbd_md_sync_page_io(struct @@ -94,14 +94,15 @@ static int _drbd_md_sync_page_io(struct
device->md_io.done = 0; device->md_io.done = 0;
device->md_io.error = -ENODEV; device->md_io.error = -ENODEV;
- bio = bio_alloc_bioset(bdev->md_bdev, 1, op | op_flags, - bio = bio_alloc_bioset(bdev->md_bdev, 1, op | op_flags,
- GFP_NOIO, &drbd_md_io_bio_set); - GFP_NOIO, &drbd_md_io_bio_set);
+ bio = bio_alloc_bioset(GFP_NOIO, 1, drbd_md_io_bio_set); + bio = bio_alloc_bioset(GFP_NOIO, 1, drbd_md_io_bio_set);
+ bio->bi_bdev = bdev->md_bdev; + bio->bi_bdev = bdev->md_bdev;
bio->bi_iter.bi_sector = sector; bio->bi_iter.bi_sector = sector;
err = -EIO; err = -EIO;
 End of changes. 28 change blocks. 
28 lines changed or deleted 11 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)