Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit da20af0e authored by derfelot's avatar derfelot
Browse files

Merge Linux 4.4.240 kernel

Changes in 4.4.240: (17 commits)
        Bluetooth: A2MP: Fix not initializing all members
        Bluetooth: MGMT: Fix not checking if BT_HS is enabled
        Bluetooth: fix kernel oops in store_pending_adv_report
        Bluetooth: Consolidate encryption handling in hci_encrypt_cfm
        Bluetooth: Fix update of connection state in `hci_encrypt_cfm`
        Bluetooth: Disconnect if E0 is used for Level 4
        media: usbtv: Fix refcounting mixup
        USB: serial: option: add Cellient MPL200 card
        USB: serial: option: Add Telit FT980-KS composition
        staging: comedi: check validity of wMaxPacketSize of usb endpoints found
        USB: serial: pl2303: add device-id for HP GC device
        USB: serial: ftdi_sio: add support for FreeCalypso JTAG+UART adapters
        reiserfs: Initialize inode keys properly
        reiserfs: Fix oops during mount
        spi: unbinding slave before calling spi_destroy_queue
        crypto: qat - check cipher length for aead AES-CBC-HMAC-SHA
        Linux 4.4.240
parents f7556b61 d98913ec
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
VERSION = 4
PATCHLEVEL = 4
SUBLEVEL = 239
SUBLEVEL = 240
EXTRAVERSION =
NAME = Blurry Fish Butt

+9 −1
Original line number Diff line number Diff line
@@ -822,6 +822,11 @@ static int qat_alg_aead_dec(struct aead_request *areq)
	struct icp_qat_fw_la_bulk_req *msg;
	int digst_size = crypto_aead_authsize(aead_tfm);
	int ret, ctr = 0;
	u32 cipher_len;

	cipher_len = areq->cryptlen - digst_size;
	if (cipher_len % AES_BLOCK_SIZE != 0)
		return -EINVAL;

	ret = qat_alg_sgl_to_bufl(ctx->inst, areq->src, areq->dst, qat_req);
	if (unlikely(ret))
@@ -836,7 +841,7 @@ static int qat_alg_aead_dec(struct aead_request *areq)
	qat_req->req.comn_mid.src_data_addr = qat_req->buf.blp;
	qat_req->req.comn_mid.dest_data_addr = qat_req->buf.bloutp;
	cipher_param = (void *)&qat_req->req.serv_specif_rqpars;
	cipher_param->cipher_length = areq->cryptlen - digst_size;
	cipher_param->cipher_length = cipher_len;
	cipher_param->cipher_offset = areq->assoclen;
	memcpy(cipher_param->u.cipher_IV_array, areq->iv, AES_BLOCK_SIZE);
	auth_param = (void *)((uint8_t *)cipher_param + sizeof(*cipher_param));
@@ -865,6 +870,9 @@ static int qat_alg_aead_enc(struct aead_request *areq)
	uint8_t *iv = areq->iv;
	int ret, ctr = 0;

	if (areq->cryptlen % AES_BLOCK_SIZE != 0)
		return -EINVAL;

	ret = qat_alg_sgl_to_bufl(ctx->inst, areq->src, areq->dst, qat_req);
	if (unlikely(ret))
		return ret;
+2 −1
Original line number Diff line number Diff line
@@ -96,7 +96,8 @@ static int usbtv_probe(struct usb_interface *intf,

usbtv_audio_fail:
	/* we must not free at this point */
	usb_get_dev(usbtv->udev);
	v4l2_device_get(&usbtv->v4l2_dev);
	/* this will undo the v4l2_device_get() */
	usbtv_video_free(usbtv);

usbtv_video_fail:
+2 −2
Original line number Diff line number Diff line
@@ -2046,13 +2046,13 @@ static int __unregister(struct device *dev, void *null)
 */
void spi_unregister_master(struct spi_master *master)
{
	device_for_each_child(&master->dev, NULL, __unregister);

	if (master->queued) {
		if (spi_destroy_queue(master))
			dev_err(&master->dev, "queue remove failed\n");
	}

	device_for_each_child(&master->dev, NULL, __unregister);

	mutex_lock(&board_lock);
	list_del(&master->list);
	mutex_unlock(&board_lock);
+3 −0
Original line number Diff line number Diff line
@@ -676,6 +676,9 @@ static int vmk80xx_find_usb_endpoints(struct comedi_device *dev)
	if (!devpriv->ep_rx || !devpriv->ep_tx)
		return -ENODEV;

	if (!usb_endpoint_maxp(devpriv->ep_rx) || !usb_endpoint_maxp(devpriv->ep_tx))
		return -EINVAL;

	return 0;
}

Loading