return ret;
 }
 
+static const char *nvmet_trace_fabrics_auth_send(struct trace_seq *p, u8 *spc)
+{
+       const char *ret = trace_seq_buffer_ptr(p);
+       u8 spsp0 = spc[1];
+       u8 spsp1 = spc[2];
+       u8 secp = spc[3];
+       u32 tl = get_unaligned_le32(spc + 4);
+
+       trace_seq_printf(p, "spsp0=%02x, spsp1=%02x, secp=%02x, tl=%u",
+                        spsp0, spsp1, secp, tl);
+       trace_seq_putc(p, 0);
+       return ret;
+}
+
+static const char *nvmet_trace_fabrics_auth_receive(struct trace_seq *p, u8 *spc)
+{
+       const char *ret = trace_seq_buffer_ptr(p);
+       u8 spsp0 = spc[1];
+       u8 spsp1 = spc[2];
+       u8 secp = spc[3];
+       u32 al = get_unaligned_le32(spc + 4);
+
+       trace_seq_printf(p, "spsp0=%02x, spsp1=%02x, secp=%02x, al=%u",
+                        spsp0, spsp1, secp, al);
+       trace_seq_putc(p, 0);
+       return ret;
+}
+
 static const char *nvmet_trace_fabrics_common(struct trace_seq *p, u8 *spc)
 {
        const char *ret = trace_seq_buffer_ptr(p);
                return nvmet_trace_fabrics_connect(p, spc);
        case nvme_fabrics_type_property_get:
                return nvmet_trace_fabrics_property_get(p, spc);
+       case nvme_fabrics_type_auth_send:
+               return nvmet_trace_fabrics_auth_send(p, spc);
+       case nvme_fabrics_type_auth_receive:
+               return nvmet_trace_fabrics_auth_receive(p, spc);
        default:
                return nvmet_trace_fabrics_common(p, spc);
        }