sess = container_of(kobj, struct rtrs_clt_sess, kobj);
        if (sess->state == RTRS_CLT_CONNECTED)
-               return sprintf(page, "connected\n");
+               return sysfs_emit(page, "connected\n");
 
-       return sprintf(page, "disconnected\n");
+       return sysfs_emit(page, "disconnected\n");
 }
 
 static struct kobj_attribute rtrs_clt_state_attr =
        __ATTR(state, 0444, rtrs_clt_state_show, NULL);
 
 static ssize_t rtrs_clt_reconnect_show(struct kobject *kobj,
-                                       struct kobj_attribute *attr,
-                                       char *page)
+                                      struct kobj_attribute *attr, char *buf)
 {
-       return scnprintf(page, PAGE_SIZE, "Usage: echo 1 > %s\n",
-                        attr->attr.name);
+       return sysfs_emit(buf, "Usage: echo 1 > %s\n", attr->attr.name);
 }
 
 static ssize_t rtrs_clt_reconnect_store(struct kobject *kobj,
               rtrs_clt_reconnect_store);
 
 static ssize_t rtrs_clt_disconnect_show(struct kobject *kobj,
-                                        struct kobj_attribute *attr,
-                                        char *page)
+                                       struct kobj_attribute *attr, char *buf)
 {
-       return scnprintf(page, PAGE_SIZE, "Usage: echo 1 > %s\n",
-                        attr->attr.name);
+       return sysfs_emit(buf, "Usage: echo 1 > %s\n", attr->attr.name);
 }
 
 static ssize_t rtrs_clt_disconnect_store(struct kobject *kobj,
               rtrs_clt_disconnect_store);
 
 static ssize_t rtrs_clt_remove_path_show(struct kobject *kobj,
-                                         struct kobj_attribute *attr,
-                                         char *page)
+                                        struct kobj_attribute *attr, char *buf)
 {
-       return scnprintf(page, PAGE_SIZE, "Usage: echo 1 > %s\n",
-                        attr->attr.name);
+       return sysfs_emit(buf, "Usage: echo 1 > %s\n", attr->attr.name);
 }
 
 static ssize_t rtrs_clt_remove_path_store(struct kobject *kobj,
 
        sess = container_of(kobj, typeof(*sess), kobj);
 
-       return scnprintf(page, PAGE_SIZE, "%u\n", sess->hca_port);
+       return sysfs_emit(page, "%u\n", sess->hca_port);
 }
 
 static struct kobj_attribute rtrs_clt_hca_port_attr =
 
        sess = container_of(kobj, struct rtrs_clt_sess, kobj);
 
-       return scnprintf(page, PAGE_SIZE, "%s\n", sess->hca_name);
+       return sysfs_emit(page, "%s\n", sess->hca_name);
 }
 
 static struct kobj_attribute rtrs_clt_hca_name_attr =
 
 };
 
 static ssize_t rtrs_srv_disconnect_show(struct kobject *kobj,
-                                        struct kobj_attribute *attr,
-                                        char *page)
+                                       struct kobj_attribute *attr, char *buf)
 {
-       return scnprintf(page, PAGE_SIZE, "Usage: echo 1 > %s\n",
-                        attr->attr.name);
+       return sysfs_emit(buf, "Usage: echo 1 > %s\n", attr->attr.name);
 }
 
 static ssize_t rtrs_srv_disconnect_store(struct kobject *kobj,
        sess = container_of(kobj, typeof(*sess), kobj);
        usr_con = sess->s.con[0];
 
-       return scnprintf(page, PAGE_SIZE, "%u\n",
-                        usr_con->cm_id->port_num);
+       return sysfs_emit(page, "%u\n", usr_con->cm_id->port_num);
 }
 
 static struct kobj_attribute rtrs_srv_hca_port_attr =
 
        sess = container_of(kobj, struct rtrs_srv_sess, kobj);
 
-       return scnprintf(page, PAGE_SIZE, "%s\n",
-                        sess->s.dev->ib_dev->name);
+       return sysfs_emit(page, "%s\n", sess->s.dev->ib_dev->name);
 }
 
 static struct kobj_attribute rtrs_srv_hca_name_attr =