Re: Query about GATT Client WriteValue dbus method

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Fri, Sep 18, 2015 at 10:39 AM, Seungyoun Ju <sy39.ju@xxxxxxxxxxx> wrote:
> Hello, All.
>
> If a remote GATT server's characteristic only supports
> BT_GATT_CHRC_PROP_WRITE_WITHOUT_RESP, src/gatt-clieint.c's WriteValue
> dbus method reaches to bt_gatt_client_write_without_response().
> And the return value is kept in chrc->write_id.
>
> But there is no point to clear this chrc->write_id.
> So next time WriteValue call is failed with in progress error.

I guess you mean there is no callback to clear it so it is obviously
wrong to store it in the write_id, we should probably fix that.

> If chrc->write_id is cleared immediately after
> bt_gatt_client_write_without_response(),
> client->pending_requests queue would be grown up infinitely when
> application calls this method repeatedly and fastly after dbus method
> return.

We could rate limit, maybe clear write_id on timeout, but then what if
the application has to write as fast as possible? Anyway for now I
think I would just reset the write_id until we come up with some
solution for stream of data, we may actually limit the queue size in
bt_gatt_client if memory is a concern.

> Is there anyone who meets such an issue ?
>
> If there is anyone who struggled with this kind of issue,
> can you help me how to solve this ?
>
> Thanks and Regards,
> Seungyoun Ju.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Luiz Augusto von Dentz
--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux